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.
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.