Как переопределить родительские функции в дочерних темах?

Я читал и пытался выяснить, как это сделать, но по какой-то причине я не могу переопределить родительские функции в моей дочерней теме.

Я использую TwentyTen в качестве родителя - может ли кто-нибудь сказать мне, почему эта функция в моей дочерней теме не переопределяет родительскую функцию?

// Override read more link
function osu_twentyten_continue_reading_link() {
 return ' <a href="'. get_permalink() . '">' . __( 'Read on <span class="meta-nav">&rarr;</span>', 'twentyten-child' ) . '</a>';
}
function osu_twentyten_auto_excerpt_more( $more ) {
 return ' &hellip;' . osu_twentyten_continue_reading_link();
}
remove_filter( 'excerpt_more', 'twentyten_auto_excerpt_more' );
add_filter( 'excerpt_more', 'osu_twentyten_auto_excerpt_more' );

Я думал, что вам нужно удалить фильтр /действие и т. д., прежде чем снова добавить его?

Спасибо,

оса

29 голосов | спросил Osu 23 Jpm1000000pmSun, 23 Jan 2011 16:28:02 +030011 2011, 16:28:02

1 ответ


33

Вы должны запустить код после настройки темы.

function osu_twentyten_continue_reading_link() {
    return ' <a href="'. get_permalink() . '">' . __( 'Read on <span class="meta-nav">&rarr;</span>', 'twentyten-child' ) . '</a>';
}

function osu_twentyten_auto_excerpt_more( $more ) {
    return ' &hellip;' . osu_twentyten_continue_reading_link();
}

function my_child_theme_setup() {
    remove_filter( 'excerpt_more', 'twentyten_auto_excerpt_more' );
    add_filter( 'excerpt_more', 'osu_twentyten_auto_excerpt_more' );
}

add_action( 'after_setup_theme', 'my_child_theme_setup' );
ответил sorich87 23 Jpm1000000pmSun, 23 Jan 2011 16:34:42 +030011 2011, 16:34:42

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132