web-dev-qa-db-ja.com

Wordpressの子テーマにfooter.phpを追加する

だから私は 'Mesmerize'をテーマにしています

私は子テーマを作成しましたが、子の中のフッターphpの一部を変更したいので、テーマの更新があるときは変更を元に戻します。

これは私の子テーマ\ wp-content\themes\mesmerize-childではmy Functions.php です。

<?php
// Exit if accessed directly
if ( !defined( 'ABSPATH' ) ) exit;

// BEGIN ENQUEUE PARENT ACTION
// AUTO GENERATED - Do not modify or remove comment markers above or below:

if ( !function_exists( 'chld_thm_cfg_parent_css' ) ):
    function chld_thm_cfg_parent_css() {
        wp_enqueue_style( 'chld_thm_cfg_parent', trailingslashit( get_template_directory_uri() ) . 'style.css', array(  ) );
    }
endif;
add_action( 'wp_enqueue_scripts', 'chld_thm_cfg_parent_css', 10 );

そして、以下は私が変更する必要があるが子テーマの中のコードです。私は子テーマを使わずにできた 'Built with Wordpress'のテキストを変更する必要があります。これは templates-functions.php 内にあります \wp-content\themes\mesmerize\inc

 //FOOTER FUNCTIONS

function mesmerize_get_footer_content($footer = null)
{
    $template = apply_filters('mesmerize_footer', null);

    if ( ! $template) {
        $template = $footer;
    }

    get_template_part('template-parts/footer/footer', $template);

}

function mesmerize_get_footer_copyright()
{
    $copyrightText = __('**Built using WordPress** and the <a target="_blank" href="%1$s" class="mesmerize-theme-link">Mesmerize Theme</a>', 'mesmerize');

    $copyrightText = sprintf($copyrightText, 'http://extendthemes.com/mesmerize');

    $copyright = '<p class="copyright">&copy;&nbsp;' . "&nbsp;" . date_i18n(__('Y', 'mesmerize')) . '&nbsp;' . esc_html(get_bloginfo('name')) . '.&nbsp;' . wp_kses_post($copyrightText) . '</p>';

    return apply_filters('mesmerize_get_footer_copyright', $copyright);
}

templates-functions.php \wp-content\themes\mesmerize-child\inc に追加してみましたが、うまくいきませんでした。私はコードを調べましたが、子テーマからファイルを呼び出すためにこれを変更するようには思えません。

さらに詳しい情報は、親テーマファイルのfooter.phpファイルを参照してください。

        <?php mesmerize_get_footer_content(); ?>
    </div>
<?php wp_footer(); ?>
</body>
</html>

あなたがより多くの情報を必要とするならば私に知らせてください、そして、どんな助けでも私がここでしている必要があることで評価されるでしょう

ありがとう

更新 - 私はそれがコメントで提案されていることから以下を試してみました。私はこれでいくらかの助けを得ることができるように私が試みたもののこのコードをポストしています。

    function change_copyrightText( $copyrightText ){
$copyrightText = __('Built using TEST and the <a target="_blank" href="%1$s" class="mesmerize-theme-link">TEST Theme</a>', 'mesmerize');

    return $copyrightText;
}

add_filter('change_copyrightText', 'change_copyrightText', 10, 1);
1
Harvey

あなたはフィルタに対して間違った議論をしています。 add_filterの最初の引数はあなたが接続しているフィルタです。あなたの場合はmesmerize_get_footer_copyrightです。 2番目の引数は、フィルタを実行するCall back関数が呼び出されることです。
では、add_filterを次のように変更してください。

add_filter('mesmerize_get_footer_copyright', 'change_copyrightText', 10,1) ;

2
Digvijayad