it-swarm.com.de

Auch entfernen Sie set_post_thumbnail_size () in untergeordneten Designs?

Daran habe ich wirklich festgehalten - das folgt aus diesem Beitrag:

So überschreiben Sie übergeordnete Funktionen in untergeordneten Designs

Ich kann nicht herausfinden, wie die set_post_thumbnail_size () - Funktion von Twenty Ten überschrieben wird. Ich habe meinen Code für die anderen Überschreibungen, die ich mache, unten angegeben, aber nichts passiert, wenn ich dies zu meiner Funktion twentyten_child_theme_setup () hinzufüge:

set_post_thumbnail_size( array(100,100) , array("class" => "alignleft post_thumbnail"), true );

Ich füge das Thumbnail wie folgt in meine Schleife ein:

<?php if ( function_exists("has_post_thumbnail") && has_post_thumbnail() ) {
the_post_thumbnail(array(100,100), array("class" => "alignleft post_thumbnail"));
} else { ?>
<img src="<?php echo bloginfo('stylesheet_directory'); ?>/images/thumb-default.jpg" alt="thumb-default" width="100" height="100" />
<?php } ?>

Ist hier meine Funktion unten - kann jemand mir helfen, diese lästige Funktion zu überschreiben?

Vielen Dank,

osu

function twentyten_child_theme_setup() {

    // OVERRIDE SIDEBAR GENERATION!
    function osu_twentyten_widgets_init() {
        // Siedbar 1, located on LHS sidebar
        register_sidebar( array(
            'name' => __( 'Primary Widget Area', 'twentyten-child' ),
            'id' => 'primary-widget-area',
            'description' => __( 'The primary widget area where the navigation goes', 'twentyten-child' ),
            'before_widget' => '<li id="%1$s" class="widget-container %2$s">',
            'after_widget' => '</li>',
            'before_title' => '<h3 class="widget-title">',
            'after_title' => '</h3>',
        ) );
        // Area 2, located on RHS sidebar
        register_sidebar( array(
            'name' => __( 'Secondary Widget Area', 'twentyten-child' ),
            'id' => 'secondary-widget-area',
            'description' => __( 'The secondary widget area', 'twentyten-child' ),
            'before_widget' => '<li id="%1$s" class="widget-container %2$s">',
            'after_widget' => '</li>',
            'before_title' => '<h3 class="widget-title">',
            'after_title' => '</h3>',
        ) );
    }
    /* Deregister sidebar in parent */
    remove_action( 'widgets_init', 'twentyten_widgets_init' );
    /** Register sidebars by running twentyten_widgets_init() on the widgets_init hook. */
    add_action( 'widgets_init', 'osu_twentyten_widgets_init' );

    // OVERRIDE EXCERPT READ MORE LINK
    function osu_readon_link() {
        return ' <a href="'. get_permalink() . '" class="readmore">' . __( 'Read More', 'twentyten-child' ) . '</a>';
    }
    // Function to override
    function osu_twentyten_custom_excerpt_more( $output ) {
        if ( has_excerpt() && ! is_attachment() ) {
            $output .= osu_readon_link();
        }
        return $output;
    }
    remove_filter( 'get_the_excerpt', 'twentyten_custom_excerpt_more' );
    add_filter( 'get_the_excerpt', 'osu_twentyten_custom_excerpt_more' );

}
/* IMPORTANT: Run the code for parent function overrides (involving hooks and filters) after theme setup! */
add_action( 'after_setup_theme', 'twentyten_child_theme_setup' );
1
Osu

Was genau meinst du mit nichts passiert ?

Technisch gesehen müssen Sie set_post_thumbnail_size() nicht entfernen, wie ich aus dem Code verstehe. Wenn Sie später einfach Ihren eigenen Anruf tätigen, wird die Größe überschrieben.

Es gibt zwei Möglichkeiten, wie Sie damit umgehen können:

  1. Stellen Sie Ihre Setup-Funktion auf eine spätere Priorität ein. Das untergeordnete Thema wird vor dem übergeordneten Thema verarbeitet. Wenn Sie also mit Standardpriorität einbinden, werden die Setup-Funktionen auch in dieser Reihenfolge ausgeführt. Also add_action( 'after_setup_theme', 'twentyten_child_theme_setup', 11 );

  2. Stecken Sie Ihre eigene Funktion twentyten_setup(). Es ist in if ( ! function_exists( 'twentyten_setup' ) ) Zustand in zehnundzwanzig eingewickelt. Kopieren Sie es einfach in Ihr Design und nehmen Sie die gewünschten Änderungen vor - Ihre Version wird anstelle der ursprünglichen Version ausgeführt.

2
Rarst