我需要添加到Divi子主题

时间:2017-03-16 09:42:21

标签: php wordpress fonts themes customization

我的问题是:我需要在Divi儿童主题中添加functions.php文件。

我想将新的Google字体(Varela Round)添加到"字体选择器"在Divi Builder。

我知道怎么做。所以这不是我的问题。

1)添加" webfont" Divi的文件夹 2)在header.php中,就在关闭head标签之前,我需要放置:

<link rel="stylesheet" href="<?php echo $template_directory_uri; ?>/webfonts/stylesheet.css" type="text/css" charset="utf-8">

我需要添加两个文件:

themes/Divi/includes/builder/core.php

themes/Divi/epanel/custom_functions.php 

以下一行:

$google_fonts = array(
'Varelda Round'             => array(
             'styles'        => '400',
             'character_set' => 'latin',
             'type'          => 'sans-serif',
    ),

当我在Divi主题中这样做时,我可以选择&#34; Varela Round&#34;字体来自我的Divi&#34;字体选择器&#34;

我现在陷入困境的是将所有这些转化为我的Divi儿童主题。

在我的Divi儿童主题中,我添加了&#34; webfont&#34;我的字体在其中的文件夹。

在Divi儿童主题中,我创造了以下两种结构。

includes/builder/core.php

epanel/custom_functions.php 

我已删除了core.phpcustom_functions.php形成我的父级Divi主题。

我知道我需要在我的functions.php中改变我的孩子主题中的某些内容,但这就是我被困的地方。我无法弄清楚我需要在儿童主题functions.php

中加入什么

您可以在下面找到子主题functions.php文件,因为我已经进行了一些自定义。

    <?php
function enqueue_parent_styles() {
   wp_enqueue_style( 'parent-style', get_template_directory_uri().'/style.css' );
   //wp_enqueue_script( 'parent-script', get_template_directory_uri().'/js/main.js' );
}
add_action("wp_head","fun_head");
function fun_head()
{


 if (is_user_logged_in()) {

    global $current_user;
      get_currentuserinfo();
      $candi="none";
      $comp="none";
     if ( isset( $current_user->roles ) && is_array( $current_user->roles ) ) 
    {
        //check for admins
        if ( in_array( 'candidate', $current_user->roles ) )
         {
            // redirect them to the default place
            $candi="block";
        } 
        elseif(in_array( 'employer', $current_user->roles ))
         {
            $comp="block";
        }

    }


  ?>
<style type="text/css">

 #show_logut {
        display: block;
      }
      #show_myaccountcandi
      {
      display: <?php echo $candi; ?>;
      }
       #show_myaccountcomp
      {
      display: <?php echo $comp; ?>;
      }
       #show_login {
        display: none ;
      }
       #show_signup {
        display: none  ;
      }


</style>

<?php } 



else { get_template_part('ajax', 'auth'); 
//include('ajax-auth.php');
?>              
      <style type="text/css">
      #show_logut {
        display: none;
      }
      #show_myaccountcandi
      {
      display: none;
      }
       #show_myaccountcomp
      {
      display: none;
      }
       #show_login {
        display: block;
      }
       #show_signup {
        display: block ;
      }
      </style>
<?php } 

}

require_once(WP_CONTENT_DIR. '/themes/divichild/custom-ajax-auth.php' );
add_action( 'template_redirect', 'wpse8170_activate_user' );
function wpse8170_activate_user() {
    if ( is_page() && get_the_ID() == 25462 ) {
        $user_id = filter_input( INPUT_GET, 'user', FILTER_VALIDATE_INT, array( 'options' => array( 'min_range' => 1 ) ) );
        if ( $user_id ) {

            // get user meta activation hash field
            $code = get_user_meta( $user_id, 'has_to_be_activated', true );
            if ( $code == filter_input( INPUT_GET, 'key' ) ) {
               delete_user_meta( $user_id, 'has_to_be_activated' );
                update_user_meta($user_id,"activated",1);
                            $user = get_user_by( 'id', $user_id );
                            if( $user ) {
                            wp_set_current_user( $user_id, $user->user_login );
                            wp_set_auth_cookie( $user_id );
                            do_action( 'wp_login', $user->user_login, $user);
                            echo "Please wait until process complete.";

                                    //echo get_option("siteurl")."/mijn-account";
                                        wp_redirect(get_option("siteurl")."/mijn-account");
                                        exit();


                            }
            }
        }

        echo "<strong>Activation Key is wrong or expired.</strong>";
        die();
    }
}

function my_login_redirect( $redirect_to, $request, $user ) {
    //is there a user to check?
    if ( isset( $user->roles ) && is_array( $user->roles ) ) 
    {
        //check for admins
        if ( in_array( 'candidate', $user->roles ) )
         {
            // redirect them to the default place
            return get_option("siteurl")."/candidate-dashboard";
        } 
        elseif(in_array( 'employer', $user->roles ))
         {
            return get_option("siteurl")."/vacature-dashboard";
        }
        else
        {
            return home_url();
        }
    } 
    else
     {
        return $redirect_to;
    }
}

add_filter( 'login_redirect', 'my_login_redirect', 10, 3 );

add_action('wp_logout','logout_redirect');

function logout_redirect(){

    wp_redirect( home_url() );

    exit;

}
?>

1 个答案:

答案 0 :(得分:2)

对于任何需要此人的人。

解决方案相当简单......

在子主题的functions.php中,您只需添加此

即可
    // Add Custom Google Font
    function add_new_google_font($google_fonts) {
       $new_fonts = array(
          'Varela Round' => array(
             'styles' => '400,400italic,700,700italic',
             'character_set' => 'latin',
             'type' => 'sans-serif',
          ),
       );

   return array_merge($google_fonts, $new_fonts);
}

add_filter( 'et_builder_google_fonts', 'add_new_google_font' );
add_filter( 'et_google_fonts', 'add_new_google_font' );