web-dev-qa-db-fra.com

Comment mettre à jour le plugin sans écraser le code personnalisé

J'utilise un plugin d'annonce de défilement horizontal pour annoncer une nouvelle en-dessous de l'en-tête. J'ai ajouté un code personnalisé pour masquer le défilement d'une annonce lors d'un événement si l'administrateur modifie l'affichage de l'état et son fonctionnement. Avant de personnaliser le plugin si définir l’affichage de l’état non, il faisait défiler les actualités avec le texte "Aucune annonce disponible". Maintenant, le problème est que si le plug-in mis à jour automatiquement, mon programme personnalisé sera écrasé par un nouveau code. Je voulais juste savoir comment mettre à jour le plug-in sans écraser le code personnalisé précédent.

Ci-dessous, la fonction à laquelle j'ai ajouté du code personnalisé pour masquer le défilement.

<?php
function HSA_shortcode( $atts ) 
{
if ( ! empty($data) ) 
    {
// Scroll new announcement 

}
else   //Hide scrolling bar

    { 
    ?> <style>

.breaking-news{
visibility:hidden;
height:0;
width:0;
opacity:0; 

}

</style>
        /*$what_Marquee = $what_Marquee . "No announcement available.";
        if($group <> "")
        {
            $what_Marquee =  $what_Marquee . " Please check this group " . $group;
        }  */
    <?php } 

    return $what_Marquee;
}
1
Sanjay Nakate

je voulais juste savoir que je peux mettre à jour le plugin sans écraser le code personnalisé précédent.

Vous pas.

Eh bien, vous faites la même chose encore et encore, chaque fois que vous souhaitez mettre à jour.

  1. Téléchargez le plugin.
  2. Piratez vos modifications.
  3. Téléchargez sur votre site.
  4. Répéter.

C'est pourquoi vous ne modifiez pas les plug-ins que vous n'avez pas écrits et ne maintenez pas .

Le plugin peut contenir une action ou un filtre que vous pouvez utiliser, mais je ne connais pas ce plugin en particulier.

Il y a une autre option dans votre cas, j'en suis sûr. Votre nom de fonction est HSA_shortcode, donc je suppose qu'il s'agit d'un rappel par shortcode. Les codes courts peuvent être détournés. Essayez:

function my_first_shortcode($atts) {
  return 'howdy';
}
add_shortcode('Hijack','my_first_shortcode');
echo do_shortcode('[Hijack]');

function my_second_shortcode($atts) {
  return 'hijacked !';
}
add_shortcode('Hijack','my_second_shortcode');
echo do_shortcode('[Hijack]');

Si vous pouvez trouver le slug de shortcode original, vous pouvez mettre votre fonction (probablement avec un nom différent) dans le functions.php de votre thème ou dans un autre plugin et pirater le shortcode original.

function my_HSA_shortcode( $atts ) {
  // ...
}
do_shortcode('origslug','my_HSA_shortcode');

Ceci, bien sûr, ne fonctionnera que jusqu'à ce que l'auteur du plug-in change le shortcode "slug", mais même dans ce cas, les problèmes de maintenance sont considérablement réduits.

6
s_ha_dum