WordPress: peaufinage d'articles connexes

wordpress

Si vous utilisez WordPress, l'un de vos plugins requis devrait être le Article similaire brancher. Cela dit, j'ai remarqué que le volume de mots-clés publiés avec mes lectures quotidiennes faussait vraiment les résultats des publications connexes.

De plus, j'ai été vraiment surpris que le plugin Related Posts ne fournisse qu'une liste de publications connexes avant le post que vous lisez! Et si vous changiez d'avis (comme je le fais souvent!)… Ne devriez-vous pas également fournir des articles publiés après l'original mais toujours liés?

En conséquence, j'ai apporté quelques modifications mineures au plugin. Tout d'abord, afin de référencer les publications avant et après la publication actuelle, j'ai modifié la ligne 91 de:

. "AND post_date> = '$ now'" à (MISE À JOUR: 11/15/2011):. "AND post_date! = '$ Now'". "AND post_date <= CURDATE ()"

Deuxièmement, les lectures quotidiennes sur mon blog sont publiées automatiquement par Del.icio.us sous un auteur spécifique (afin que je ne change jamais le mot de passe et ne casse pas la publication automatique). Pour ce faire, je viens d'ajouter un autre paramètre de requête pour omettre cet auteur des publications qui ont été recherchées en insérant la ligne suivante après la précédente:

. "AND post_author! = 4"

J'ai trouvé le numéro de l'auteur simplement en le recherchant dans mes utilisateurs. Je préfère ne pas compliquer les choses en rejoignant une autre table - cela pourrait réduire la vitesse à laquelle ces résultats sont affichés et ralentir le temps de chargement. Cela conduira les gens à devenir frustrés et à partir.

Les avantages de l'affichage des articles associés

Related Posts est un outil fantastique pour tout blog. Les articles connexes renforcent les résultats des moteurs de recherche en agrandissant les mots-clés via des liens, un élément important des algorithmes des moteurs de recherche.

Les articles associés ne sont pas seulement un SEM outil, cependant. Les publications associées sont un outil de rétention qui maintiendra les utilisateurs sur votre site. Ils ne trouveront peut-être pas ce qu'ils cherchaient là où ils ont atterri - mais si vous leur fournissez des références supplémentaires, ils peuvent rester dans les parages!

20 Commentaires

  1. 1

    Truc sympa. Je n'avais pas réalisé que Related Posts sélectionne uniquement les entrées de blog précédentes… Je vais devoir modifier le plug-in. Merci pour l'avertissement et les instructions 🙂
    …et une heureuse nouvelle année!

  2. 2

    Bon hack - bien que personnellement j'utilise des balises simples pour les publications liées basées sur des balises, mais je suis tout à fait d'accord que les publications connexes sont indispensables.

  3. 3

    wow .. c'est une bonne astuce. Même si je n'ai pas de plug-in de publications liées au wasabi, j'ai le plug-in Simple Tags pour les publications connexes et je suppose qu'il doit utiliser la même condition postdate <. Merci pour le conseil, permettez-moi de vérifier mon code de plug-in et de voir si je peux le modifier pour donner de meilleurs résultats.

  4. 4

    Chandoo, Simple Tags n'utilise pas de condition de postdate - je crois qu'il crée les publications associées en direct, avec chaque page vue (sauf si le cache est activé). Ce n'est pas la chose la plus efficace pour le serveur, mais cela signifie qu'il obtiendra les meilleures correspondances, qu'elles aient été publiées avant ou après la publication de la publication.

    Doug - désolé d'être un peu hors sujet...

  5. 6

    Super article! Mais je veux ramasser quelques lentes.

    Votre justification pour "(ne pas) rejoindre une autre table" car:

    "cela pourrait réduire la vitesse d'affichage de ces résultats et ralentir le temps de chargement"

    est hors de propos et un exemple d'optimisation prématurée qui inhibe la maintenabilité, et c'est dommage de voir des gens avec un public important recommander de telles choses car cela propage la désinformation.

    La jointure SQL dont vous parlez, en supposant que vous ayez des index raisonnables en place, augmentera votre temps de réponse d'au plus microsecondes. Il faudrait avoir des tonnes et des tonnes de trafic avant que quiconque ne remarque ne serait-ce qu'une demi-seconde de différence. Maintenant, oui, si vous vous forcez, vous pouvez écrire un code SQL vraiment insensé qui fonctionnera terriblement, mais une jointure supplémentaire sur des données à clé n'en est pas un exemple.

    De plus, plutôt que de préconiser le piratage du plugin publié par quelqu'un, j'aimerais vraiment vous voir préconiser de l'améliorer, puis travailler pour que votre amélioration soit incluse dans le plugin lui-même. En l'état, vous pourriez demander à des codeurs amateurs d'appliquer vos modifications, puis de passer ultérieurement à la nouvelle version du plug-in. Ils perdraient les modifications mais ne pourraient pas comprendre ce qui n'allait pas. Votre modification est bénigne, juste une perte de fonctionnalité, mais certains hacks peuvent provoquer la panne d'un site si une future révision du plugin principal est utilisée par-dessus celle piratée.

    JMTCW. Continuez votre bon travail sinon. 🙂

    • 7

      Salut Mike!

      Merci d'avoir répondu - je ne suis pas sûr d'être d'accord, cependant. Je n'ai pas optimisé prématurément… en fait, j'ai trouvé le meilleur moyen d'obtenir toutes les fonctionnalités dont j'avais besoin sans avoir à apporter de modifications supplémentaires. Dans mon livre, cela devrait être la cible de tous les développeurs.

      J'ai aussi dit qu'il pourriez affecter les performances. Je n'ai pas pris la peine de tester ou d'essayer car ce n'était pas nécessaire compte tenu de la manière dont j'ai optimisé le plugin. Encore une fois, j'ai obtenu 100% des fonctionnalités dont j'avais besoin sans faire de jointure ni ajouter d'index, etc. C'est la bonne solution dans mon livre.

      Je suis d'accord avec vous sur vos autres notes, cependant. Je me méfie des plugins de republication, j'ai l'impression d'être exposé au travail de quelqu'un d'autre. J'ai fait référence au blog de l'auteur à ce sujet - alors peut-être qu'il les prendra en considération comme fonctionnalités pour une future version.

      PS : Correction du montage ! 🙂

      • 8

        @Douglas : Je ne suis pas sûr d'être d'accord, cependant. Je n'ai pas optimisé prématurément ? Encore une fois, j'ai obtenu 100% des fonctionnalités dont j'avais besoin sans faire de jointure ni ajouter d'index, etc.

        Eh bien, je suppose que c'est la différence entre quelqu'un qui regarde la programmation d'un perfectionnement professionnel et d'un métier par rapport à quelqu'un qui est un praticien essayant juste de faire quelque chose (et je ne dis pas cela de manière péjorative ; sur certaines listes de diffusion, je joue le rôle de lettre contre l'ancien. 🙂

        C'est similaire à la façon dont un comptable ou un avocat dit à un propriétaire d'entreprise "je ne ferais pas ça» et le propriétaire de l'entreprise, ne s'imprégnant pas de toutes les ramifications dont les professionnels sont conscients qu'elles sont *potentielles*, ignore leurs conseils parce que cela semble être trop d'efforts, et va de l'avant. Dieu sait que j'ai été ce propriétaire d'entreprise dans le passé et que j'ai avancé contre tous les conseils, bien qu'à mon grand regret plus tard. 🙂

        @Douglas: Je me méfie des plugins de republication, …

        Non, ce n'est pas exactement ce que je disais. Ce que je disais, c'est que puisque c'est open source, vous pouvez apporter vos modifications à l'auteur original, il l'acceptera, et vous pouvez le faire de manière proactive en contactant et en proposant. Je travaille actuellement en tant que consultant en marketing et implémenteur de sites Web pour des éditeurs d'impression de niche et j'utilise Drupal pour la technologie Web, et la communauté Drupal contacte toujours les auteurs de plugins (Drupal les appelle des « modules ») et propose d'aider à améliorer les modules des autres.

        Juste une pensée.

        PS Merci pour le correctif d'édition.

        • 9

          Bons points, Mike !

          Je peux bricoler avec le plugin pour ajouter cette option "Afficher uniquement les messages avant le message affiché". Je pense que la deuxième option est un peu plus propriétaire pour mon blog, mais je vais vérifier et voir si cela peut intéresser l'auteur.

  6. 11
  7. 13

    Doug - Il me manque peut-être quelque chose ici. Il paraît que

    AND post_date <= '$now'

    n'empêche pas les messages publiés après ce message particulier d'être inclus, d'autant qu'il empêche l'inclusion de messages que vous avez peut-être configurés pour être publié à l'avenir.

    J'espère que cela a du sens et merci pour ce super blog.

  8. 15

    @Mike: Eh bien, je suppose que c'est la différence entre quelqu'un qui regarde la programmation d'un perfectionnement professionnel et un métier par rapport à quelqu'un qui est un praticien essayant simplement de faire quelque chose

    Différence intéressante. Bien qu'il serait bien que tout fonctionne au mieux possible, dans de nombreux cas, cela semble peu pratique. Je m'efforce de trouver un équilibre dans ma programmation entre la façon dont je voudrais que quelque chose fonctionne et combien de dollars ou de temps il faudra pour y arriver.

    Je m'efforce de faire le minimum nécessaire pour atteindre le but que j'essaie d'atteindre. Passer plus de temps ne serait pas rentable.

    En bref, à moins que cette perte d'efficacité ne soit perceptible dans mon blog, je ne passerais pas le temps supplémentaire, si c'est perceptible, je déciderais si le temps supplémentaire vaudrait le résultat. La perfection n'est pas toujours la meilleure solution.

    • 16

      @Dwayne : Je m'efforce de faire le minimum nécessaire pour atteindre le but que j'essaie d'atteindre. Passer plus de temps ne serait pas rentable.

      Bien sûr, si toujours faire le minimum signifie que vous n'apprenez pas de meilleures techniques vous obligeant à répéter le minimum plusieurs fois à l'avenir plutôt que de vous permettre de l'éviter, alors vous avez fait un faux exploit. Oui, de nombreuses tâches ne nécessitent pas d'effort supplémentaire, mais j'ai vu de nombreuses personnes prendre des raccourcis comme celui-ci dans le passé et elles faisaient partie des personnes les moins productives et/ou les moins créatrices de valeur que je connaissais (certaines d'entre elles étaient malheureusement mes employés , c'est pourquoi j'ai vraiment remarqué leur manque de productivité.)

      @Dwayne: En bref, à moins que cette perte d'efficacité ne soit perceptible dans mon blog, je ne passerais pas le temps supplémentaire, si c'est perceptible, je déciderais si le temps supplémentaire vaudrait le résultat. La perfection n'est pas toujours la meilleure solution.

      Je pense que vous avez raté mes points. Tout d'abord, je disais que Doug optimisait pour des efficacités imperceptibles, pas moi, mais plus important encore, si vous allez implémenter un hack qui peut causer de futurs problèmes de maintenabilité, pour l'amour de Dieu, ne le publiez pas pour d'autres sans au moins leur dire de la genre de problèmes de maintenabilité que cela pourrait leur causer plus tard.

      L'ironie de votre commentaire est qu'emprunter la voie rapide et facile finit souvent par vous coûter beaucoup plus de temps à l'avenir lorsque vous installez une mise à jour de sécurité pour votre WordPress, perdez votre fonctionnalité piratée et souhaitez la récupérer. Vous avez maintenant une botte de foin avec une aiguille manquante et vous devez maintenant déterminer où se trouvait l'aiguille.

      Passer plus de temps sur les performances ? Bah, généralement pas nécessaire. Passer plus de temps sur la maintenabilité ? Oui, c'est souvent rentable à long terme.

      En conclusion, oui, c'est dans la nature humaine de rejeter les avertissements pour des choses qui ne se sont jamais causé de douleur. Ressentez la douleur une fois et vous serez beaucoup plus susceptible de tenir compte des avertissements des autres qui ont déjà ressenti cette douleur.

  9. 17

    Une chose que je devrais dire; Je pense que le hack de Doug serait un bon ajout à WordPress, au moins en tant qu'option utilisateur. Il semble plutôt idiot de limiter les messages connexes à ceux qui ont précédé.

    ÉGALEMENT, je voudrais demander à Doug de publier sur la façon dont ses messages quotidiens sont publiés à partir de del.icio.us ; ce serait un sujet intéressant.

    • 18
      • 19

        Il h. Bon ! Je suppose que j'aurais d'abord dû chercher sur Google.

        BTW, je vous ai envoyé un e-mail personnel à propos de ma présence à Indy du 16 au 19 février il y a environ une semaine, mais je n'ai pas eu de réponse. Avez-vous obtenu? (n'hésitez pas à supprimer cette partie de mon commentaire.)

  10. 20

Que pensez-vous?

Ce site utilise Akismet pour réduire les spams. Découvrez comment sont traitées les données de vos commentaires..