web-dev-qa-db-fra.com

Informations sur le droit d'auteur dans Thème Enfant PHP

Vous trouverez ci-dessous le fichier dans lequel les informations sont extraites.

J'ai essayé d'ajouter le dossier/inc au thème de l'enfant et d'ajouter le template-tags.php avec le changé, mais cela n'a aucun effet.

/wp-content/themes/hestia/inc/template-tags.php

C'est le code original ici…

function hesta_bottom_footer_content( $is_callback = false ) {
    if ( ! $is_callback ) {
    ?>
        <div class="hestia-bottom-footer-content">
        <?php
    }
    $hestia_general_credits     = get_theme_mod(
        'hestia_general_credits',
        sprintf(
            /* translators: %1$s is Theme Name, %2$s is WordPress */
            esc_html__( '%1$s | Powered by %2$s', 'hestia' ),
            sprintf(
                /* translators: %s is Theme name */
                '<a href="https://themeisle.com/themes/hestia/" target="_blank"         rel="nofollow">%s</a>',
                esc_html__( 'Hestia', 'hestia' )
            ),
            /* translators: %s is WordPress */
            sprintf(
                '<a href="%1$s" rel="nofollow">%2$s</a>',
                esc_url( __( 'http://wordpress.org', 'hestia' ) ),
                esc_html__( 'WordPress', 'hestia' )
            )
        )
    );
    $hestia_copyright_alignment = get_theme_mod( 'hestia_copyright_alignment',    'right' );
    $menu_class                 = 'pull-left';
    $copyright_class            = 'pull-right';
    switch ( $hestia_copyright_alignment ) {
        case 'left':
            $menu_class      = 'pull-right';
            $copyright_class = 'pull-left';
            break;
        case 'center':
            $menu_class      = 'hestia-center';
            $copyright_class = 'hestia-center';
    }
    wp_nav_menu(
        array(
            'theme_location' => 'footer',
            'depth'          => 1,
            'container'      => 'ul',
            'menu_class'     => 'footer-menu ' . esc_attr( $menu_class ),
        )
    );
        ?>
    <?php if ( ! empty( $hestia_general_credits ) || is_customize_preview() ) :    ?>
        <div class="copyright <?php echo esc_attr( $copyright_class ); ?>">
            <?php echo wp_kses_post( $hestia_general_credits ); ?>
        </div>
    <?php endif; ?>
    <?php
    if ( ! $is_callback ) {
    ?>
        </div>
        <?php
    }
   }

Et ceci est le même code avec les modifications que je veux faire qui est la partie "conçu par"

function hesta_bottom_footer_content( $is_callback = false ) {
    if ( ! $is_callback ) {
    ?>
        <div class="hestia-bottom-footer-content">
        <?php
    }
    $hestia_general_credits     = get_theme_mod(
        'hestia_general_credits',
        sprintf(
            /* translators: %1$s is Theme Name, %2$s is WordPress */
            esc_html__( 'Designed by HCL Design' ),
            sprintf(
                /* translators: %s is Theme name */
                '<a href="https://themeisle.com/themes/hestia/" target="_blank" rel="nofollow">%s</a>',
                esc_html__( 'Hestia', 'hestia' )
            ),
            /* translators: %s is WordPress */
            sprintf(
                '<a href="%1$s" rel="nofollow">%2$s</a>',
                esc_url( __( 'http://wordpress.org', 'hestia' ) ),
                esc_html__( 'WordPress', 'hestia' )
            )
        )
    );
    $hestia_copyright_alignment = get_theme_mod( 'hestia_copyright_alignment', 'right' );
    $menu_class                 = 'pull-left';
    $copyright_class            = 'pull-right';
    switch ( $hestia_copyright_alignment ) {
        case 'left':
            $menu_class      = 'pull-right';
            $copyright_class = 'pull-left';
            break;
        case 'center':
            $menu_class      = 'hestia-center';
            $copyright_class = 'hestia-center';
    }
    wp_nav_menu(
        array(
            'theme_location' => 'footer',
            'depth'          => 1,
            'container'      => 'ul',
            'menu_class'     => 'footer-menu ' . esc_attr( $menu_class ),
        )
    );
        ?>
    <?php if ( ! empty( $hestia_general_credits ) || is_customize_preview() ) : ?>
        <div class="copyright <?php echo esc_attr( $copyright_class ); ?>">
            <?php echo wp_kses_post( $hestia_general_credits ); ?>
        </div>
    <?php endif; ?>
    <?php
    if ( ! $is_callback ) {
    ?>
        </div>
        <?php
    }
}

Donc est-il possible de faire ce changement en ajoutant une sorte de fonction au fichier functions.php ou à tout autre fichier? N'importe quelle solution me permettra de faire ce changement et de ne pas changer à chaque mise à jour du thème.

Dans le footer.php il y a juste

<?php do_action( 'hestia_do_footer' ); ?>

c'est ce qui m'a amené à trouver la source de cette action.

Toute aide sera appréciée et s'il vous plaît laissez-moi savoir tous les autres détails dont vous avez besoin car c'est très difficile à expliquer.

1
Harvey

Vous devez modifier 2 fonctions et pas seulement 1 dans votre functions.php:

/**
 * Function to display footer content.
 *
 * @since 1.1.24
 * @access public
 */
//ADDED CHILD TO THE END OF THE NAME
function hestia_the_footer_content_child() {
    /**
     * Array holding all registered footer widgets areas
     */
    $hestia_footer_widgets_ids = array( 'footer-one-widgets', 'footer-two-widgets', 'footer-three-widgets' );
    $hestia_footer_class = 'col-md-4';
    $footer_has_widgets = false;
    $hestia_nr_footer_widgets = get_theme_mod( 'hestia_nr_footer_widgets','3' );

    /**
     *  Enabling alternative footer style
     */
    $footer_style = '';
    $footer_style = get_theme_mod( 'hestia_alternative_footer_style', 0 );
    if ( isset( $footer_style ) && $footer_style == 0 ) {
        $footer_style = 'footer-black';
    } else {
        $footer_style = '';
    }

    /**
     *  Get the widgets areas ids and class corresponding to the number selected by the user
     */
    if ( ! empty( $hestia_nr_footer_widgets ) ) {
        $hestia_footer_widgets_ids = array_slice( $hestia_footer_widgets_ids, 0, $hestia_nr_footer_widgets );
        switch ( $hestia_nr_footer_widgets ) {
            case 1:
                $hestia_footer_class = 'col-md-12';
                break;
            case 2:
                $hestia_footer_class = 'col-md-6';
                break;
            case 3:
                $hestia_footer_class = 'col-md-4';
                break;
            case 4:
                $hestia_footer_class = 'col-md-3';
                break;
        }
    }
    /**
     * Check if the selected footer widgets areas are not empty
     */
    if ( ! empty( $hestia_footer_widgets_ids ) ) {
        foreach ( $hestia_footer_widgets_ids as $hestia_footer_widget_item ) {
            $footer_has_widgets = is_active_sidebar( $hestia_footer_widget_item );
            if ( $footer_has_widgets ) {
                break;
            }
        }
    }

    hestia_before_footer_trigger();
    ?>
    <footer class="footer <?php echo esc_attr( $footer_style ); ?> footer-big">
        <?php hestia_before_footer_content_trigger(); ?>
        <div class="container">
            <?php
            if ( $footer_has_widgets ) {
            ?>
                <div class="content">
                    <div class="row">
                        <?php
                        if ( ! empty( $hestia_footer_widgets_ids ) ) {
                            foreach ( $hestia_footer_widgets_ids as $hestia_footer_widget_item ) {
                                if ( is_active_sidebar( $hestia_footer_widget_item ) ) {
                                    echo '<div class="' . $hestia_footer_class . '">';
                                        dynamic_sidebar( $hestia_footer_widget_item );
                                    echo '</div>';
                                }
                            }
                        }
                        ?>
                    </div>
                </div>
                <hr/>
                <?php
            }
            ?>
            <?php hestia_before_footer_widgets_trigger(); ?>
            <div class="hestia-bottom-footer-content">
                <?php
//ADDED CHILD THIS IS THE CALL TO THE COPYRIGHT
                hesta_bottom_footer_content_child();
                ?>
            </div>
            <?php hestia_after_footer_widgets_trigger(); ?>
        </div>
        <?php hestia_after_footer_content_trigger(); ?>
    </footer>
    <?php
    hestia_after_footer_trigger();
}
//WE CHANGE THE ACTION NAME AND THE CALL IS TO OUR FUNCTION NOW
add_action( 'hestia_do_footer_child', 'hestia_the_footer_content_child' );

    //THIS IS YOUR MODIFIED FUNCTION
    function hesta_bottom_footer_content_child( $is_callback = false ) {
    if ( ! $is_callback ) {
    ?>
        <div class="hestia-bottom-footer-content">
        <?php
    }
    $hestia_general_credits     = get_theme_mod(
        'hestia_general_credits',
        sprintf(
            /* translators: %1$s is Theme Name, %2$s is WordPress */
            esc_html__( 'Designed by HCL Design' ),
            sprintf(
                /* translators: %s is Theme name */
                '<a href="https://themeisle.com/themes/hestia/" target="_blank" rel="nofollow">%s</a>',
                esc_html__( 'Hestia', 'hestia' )
            ),
            /* translators: %s is WordPress */
            sprintf(
                '<a href="%1$s" rel="nofollow">%2$s</a>',
                esc_url( __( 'http://wordpress.org', 'hestia' ) ),
                esc_html__( 'WordPress', 'hestia' )
            )
        )
    );
    $hestia_copyright_alignment = get_theme_mod( 'hestia_copyright_alignment', 'right' );
    $menu_class                 = 'pull-left';
    $copyright_class            = 'pull-right';
    switch ( $hestia_copyright_alignment ) {
        case 'left':
            $menu_class      = 'pull-right';
            $copyright_class = 'pull-left';
            break;
        case 'center':
            $menu_class      = 'hestia-center';
            $copyright_class = 'hestia-center';
    }
    wp_nav_menu(
        array(
            'theme_location' => 'footer',
            'depth'          => 1,
            'container'      => 'ul',
            'menu_class'     => 'footer-menu ' . esc_attr( $menu_class ),
        )
    );
        ?>
    <?php if ( ! empty( $hestia_general_credits ) || is_customize_preview() ) : ?>
        <div class="copyright <?php echo esc_attr( $copyright_class ); ?>">
            <?php echo wp_kses_post( $hestia_general_credits ); ?>
        </div>
    <?php endif; ?>
    <?php
    if ( ! $is_callback ) {
    ?>
        </div>
        <?php
    }
}

Dans footer.php, nous appelons notre action:

<?php do_action( 'hestia_do_footer_child' ); ?>

Même si vous avez modifié la fonction, la fonction réelle du droit d'auteur était appelée par une autre fonction. Vous devez donc créer votre propre version de celle-ci afin qu'elle appelle votre fonction modifiée.

1
David Lee