web-dev-qa-db-fra.com

wordpress utilisation de la variable php woocommerce% 1 $ s

J'utilise wordpress avec woocommerce et j'essaie de manipuler une copie de myaccount.php. Le code par défaut utilise certaines variables que je ne connais pas et sur lesquelles je n'ai pas trouvé de documentation. Les variables en question sont% 1 $ s,% 2 $ s et% s

<p class="myaccount_user">
<?php
printf(
    __( 'Hello <strong>%1$s</strong> (not %1$s? <a href="%2$s">Sign out</a>).', 'woocommerce' ) . ' ',
    $current_user->display_name,
    wp_logout_url( get_permalink( wc_get_page_id( 'myaccount' ) ) )
);
?>

<?php
printf( __( 'From this page you can view your recent orders, manage your shipping and billing addresses and <a href="%s">edit your password and account details</a>.', 'woocommerce' ),
    wc_customer_edit_account_url()
);
?>
</p>

Comment puis-je identifier les variables, ce qu'elles représentent et comment les utiliser?

Je vous remercie.

2
tech

Les %1$s et %2$s sont des "spécifications de conversion" standard (c.-à-d. des espaces réservés ) utilisés avec la famille printf(). de PHP fonctions (rien à voir avec WordPress ou WooCommerce). Ils sont remplacés par les valeurs d'argument transmises à la fonction printf().

Ainsi, dans le premier exemple, %1$s est remplacé par la valeur de $current_user->display_name (1er argument) et %2$s par la valeur renvoyée par wp_logout_url( get_permalink( wc_get_page_id( 'myaccount' ) ) ) (2ème argument).

L'espace réservé spécifie comment l'affichage de la valeur.

  • % indique le début de l'espace réservé.

  • Le numéro 1 qui suit est une référence à quel argument, 1 ou 2 dans cet exemple.

  • s indique une chaîne.

Référence supplémentaire:
http://php.net/manual/en/function.sprintf.php

2
MrWhite