Écrire une réponse

Veuillez écrire votre message et l'envoyer

Cliquez dans la zone sombre de l'image pour envoyer votre message.

Retour

Résumé de la discussion (messages les plus récents en premier)

ddtddt
2019-07-06 07:56:37

Bonjour,

oui la valeur c'est l'ordre donc au dessus de 61

oui ce que tu veux dans la description donc si tu veux la description de l'album il suffit de la reprendre

photonoxx
2019-07-05 21:03:56

Bonsoir et merci pour ta réponse.

Comme je le disais, mon PHP est un peu vieux et rouillé, donc :

Le 61 correspond donc à un ordre de traitement ou c'est quelque chose d'autre. J'ai tenté une recherche sur add_event_handler pour comprendre un peu la synthaxe, mais sans gros succès.

Par exemple, si je mets 62, ça le fait, ou il faut que je fasse attention à d'autres paramètres ?

Et $labonnevariable doit correspondre à l'ensemble concaténé des infos que je souhaite ou bien aux infos supplémentaires que je voudrais ?

De toute façon je vais faire quelques tests.

merci encore

Nicolas

ddtddt
2019-07-05 06:07:51

Bonjour,

Je ne sais pas ce qui dois être juste, ce qui est sur c'est que quand j'ai créé le plugin l'utilisateur préférais ne rien avoir que la description de l'album ou la photo qui était beaucoup trop long pour lui ...

Maintenant il faut que je face évoluer le plugin donc il faut que j'alimente ma réflexion...


pour la question initial perso je pense que tu peux faire un plugin perso qui affecte à 

****
add_event_handler('loc_end_page_header', 'add_metacat_perso', 61);

function add_metacat_perso() {
  global $template;
      $template->assign('PLUG_META', $labonnevariable);
}

****
en remplaçant 61 pour que ta fonction passe après

photonoxx
2019-07-04 21:49:12

Bonsoir,

Grosso modo, c'est un peu l'idée oui, étant donné que les photos et les albums avaient déjà un champs description dans le Piwigo de base, ça me semblait à priori logique, plutôt que d'avoir à saisir en double les description.

Après, je ne dis pas que ce que je voudrais comme comportement est ce qui doit "être", juste je voulais savoir si il existait un moyen autre que de modifier ton plugin en local.

ddtddt
2019-07-04 21:20:30

Bonjour,

alors j'ai repris ta discussion parce que je pense que l'on parlais pas de la même chose

donc de ton point de vu dans le plugin si pas de description spécifique on ajoute la descripion de l'album ou la photo si il est définie ?

photonoxx
2019-07-04 16:45:44

Bootstrap Darkroom

Voici le début du template où j'ai uniquement modifier la dernière ligne (avant les deux {/if})

Code:

<!DOCTYPE html>
<html lang="{$lang_info.code}" dir="{$lang_info.direction}">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset={$CONTENT_ENCODING}">
    <meta name="generator" content="Piwigo (aka PWG), see piwigo.org">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
    <meta name="mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
{if $meta_ref_enabled}
{if isset($INFO_AUTHOR)}
    <meta name="author" content="{$INFO_AUTHOR|@strip_tags:false|@replace:'"':' '}">
{/if}
{if isset($related_tags)}
    <meta name="keywords" content="{foreach from=$related_tags item=tag name=tag_loop}{if !$smarty.foreach.tag_loop.first}, {/if}{$tag.name}{/foreach}">
{/if}
{if isset($COMMENT_IMG)}
    <meta name="description" content="{$COMMENT_IMG|@strip_tags:false|@replace:'"':' '}{if isset($INFO_FILE)} - {$INFO_FILE}{/if}">
{else}
    <meta name="description" content="{$PAGE_TITLE}{if !empty($CONTENT_DESCRIPTION)} - {$CONTENT_DESCRIPTION}{/if}{if isset($INFO_FILE)} - {$INFO_FILE}{/if}">
{/if}
{/if}

A l'origine, la dernière ligne est tel que suit :

Code:

<meta name="description" content="{$PAGE_TITLE}{if isset($INFO_FILE)} - {$INFO_FILE}{/if}">

Mais le plugin meta doit bien trouver ce qu'il cherche, puisque activé, les infos ne sont plus les mêmes.

ddtddt
2019-07-03 21:22:53

Bonjour,

le plugin remplace la variable de piwigo par celle du plugin

Le plugin filtre le template si dans le template il n'y a pas ce qu'il cherche il ne va pas trouver

tu utilise quoi comme thème ?

photonoxx
2019-07-02 08:18:22

Merci de ta réponse

En fait, sur une page d'un album possédant une description, cette description n'apparaissait pas dans le meta description, avec ou sans le plugin. Les infos affichées sont uniquement PAGE_TITLE et INFO_FILE si existant (pour Bootstrap et Stripped, mais modus n'affiche rien par défaut, je en sais pas si ça se passe dans la config du thème).

Donc je voulais ajouter CONTENT_DESCRIPTION dans le template pour que le champ description des albums (celui d'origine dans Piwigo) soit ajouté dans la balise meta, ce qui fonctionne, sauf quand le plugin meta est activé.

En regardant cette fonction du plugin :

Code:

function upmata($content, &$smarty){
  $search = '#<meta name="description" content=".*?">#';
  $replacement = '<meta name="description" content="{$PLUG_META}">';
  return preg_replace($search, $replacement, $content);
}

J'ai l'impression que concernant la balise meta description, il y a une recherche du contenu de la balise dans $content remplacé par {$PLUG_META] et non ajouté, mais mon php est assez sommaire et assez rouillé.

Le code modifié posté dans mon message permettait donc de voir apparaître le champ voulu, le template ne semblant pas avoir d'effet.

Nicolas

ddtddt
2019-07-02 06:21:14

Bonjour,
Il n'y a pas besoins de récupérer CONTENT_DESCRIPTION puisque le plugin ne fait qu'ajouter des information sur ce champ sans en supprimer le contenu


qu'est ce qui ne arche pas avec ce thème ?

photonoxx
2019-07-01 15:52:56

Bonjour,

Je viens de commencer à essayer le plugin meta (merci de l'avoir créer), et je me posais une question.

En commençant donc à me poser la question du référencement, j'ai donc installer le plugin qui permet d'ajouter des description et mot clés globaux pour la galerie. Cependant, en remarquant que sur la page des albums possédant une description cette dernière n'était pas ajoutée, j'ai essayé créer un template alternatif au header.tpl (thème Bootstrap Darkroom) en ajoutant "$CONTENT_DESCRIPTION" dans la méta description en plus du titre, mais en fait, cela ne fonctionnait pas en raison du fait que le plugin intercepte la balise meta description et ne tient pas compte du template.

J'ai donc modifié la fonction add_meta dans le code du main.inc.php du plugin tel que suit (au début et àla partie //Description) :

Code:

function add_meta(){
  global $template, $page, $meta_infos;
  $meta_infos = array();
  $meta_infos['author'] = $template->get_template_vars('INFO_AUTHOR');
  $meta_infos['related_tags'] = $template->get_template_vars('related_tags');
  $meta_infos['info'] = $template->get_template_vars('INFO_FILE');
  $meta_infos['title'] = $template->get_template_vars('PAGE_TITLE');
//ADDED BY PHOTONOXX
  $meta_infos['desc'] = $template->get_template_vars('CONTENT_DESCRIPTION');

  $query = 'SELECT id,metaname,metaval FROM ' . meta_TABLE . ' WHERE metaname IN (\'author\', \'keywords\', \'Description\', \'robots\');';
  $result = pwg_query($query);
  $meta = array();
  while ($row = pwg_db_fetch_assoc($result)){
    $meta[$row['metaname']] = $row['metaval'];
    $metaED[$row['metaname']] = trigger_change('AP_render_content', $meta[$row['metaname']]);
  }

  // Authors
  if (!empty($meta_infos['author']) and ! empty($metaED['author'])){
    $template->assign('INFO_AUTHOR', $meta_infos['author'] . ' - ' . $metaED['author']);
  } elseif (!empty($metaED['author'])){
    $template->assign('INFO_AUTHOR', $metaED['author']);
  }

  // Keywords
  if (!empty($metaED['keywords'])){
    $template->append('related_tags', array('name' => $metaED['keywords']));
  }

  // Description

//MODIFIED BY PHOTONOXX ajout d'une étape elseif et du champ $meta_info['desc'] dans les deux premiers if elseif

  if (!empty($meta_infos['title']) and !empty($meta_infos['desc']) and ! empty($meta_infos['info']) and ! empty($metaED['Description'])) {
    $template->assign('PLUG_META', $meta_infos['title'] . ' - ' . $meta_infos['desc'] . ' - ' .$meta_infos['info'] . ', ' . $metaED['Description']);
  } elseif (!empty($meta_infos['title']) and !empty($meta_infos['desc']) and ! empty($metaED['Description'])) {
    $template->assign('PLUG_META', $meta_infos['title'] . ' - ' . $meta_infos['desc'] . ' - ' . $metaED['Description']);
  } elseif (!empty($meta_infos['title']) and ! empty($metaED['Description'])) {
    $template->assign('PLUG_META', $meta_infos['title'] . ' - ' . $metaED['Description']);
  } elseif (!empty($metaED['Description'])) {
    $template->assign('PLUG_META', $metaED['Description']);
  }

  // Robots
  if (!empty($meta['robots'])) {
    $template->append('head_elements', '<meta name="robots" content="' . $meta['robots'] . '">');
  }

  //Metaperso
  if (script_basename() !== 'admin') {
    $metapersos = pwg_query("SELECT * FROM " . METAPERSO_TABLE . ";");

    if (pwg_db_num_rows($metapersos)) {
      while ($metaperso = pwg_db_fetch_assoc($metapersos)) {
        $items = array(
          'METANAME' => $metaperso['metaname'],
          'METAVAL' => $metaperso['metaval'],
          'METATYPE' => $metaperso['metatype']
        );
        $template->append('metapersos', $items);
      }
    }

    $template->set_filename('PERSO_META', realpath(meta_PATH . 'persometa.tpl'));
    $template->append('head_elements', $template->parse('PERSO_META', true));
  }

  $MPC = pwg_db_fetch_assoc(pwg_query("SELECT state FROM " . PLUGINS_TABLE . " WHERE id = 'ContactForm';"));
  if ($MPC['state'] == 'active'){
    global $conf;
    if (isset($page['section']) and $page['section'] == 'contact' and isset($conf['contactmeta']) and strpos($conf['contactmeta'], ',') !== false){
      $metacontact = explode(',', $conf['contactmeta']);
      $metakeyED = trigger_change('AP_render_content', $metacontact[0]);
      $metadesED = trigger_change('AP_render_content', $metacontact[1]);
      if (!empty($metakeyED)){
        $template->append('related_tags', array('name' => $metakeyED));
      }
      if (!empty($metadesED)){
        $template->assign('PLUG_META', $metadesED);
      }
    }
  }

  $MAP = pwg_db_fetch_assoc(pwg_query("SELECT state FROM " . PLUGINS_TABLE . " WHERE id = 'AdditionalPages';"));
  if ($MAP['state'] == 'active') {
    if (!empty($page['additional_page']['id'])) {
      $lire = $page['additional_page']['id'];
      $query = 'SELECT id, metaKeyap, metadesap FROM ' . META_AP_TABLE . ' WHERE id = \'' . $lire . '\';';
    $result = pwg_query($query);
    $row = pwg_db_fetch_assoc($result);
    $metaKeyapap = $row['metaKeyap'];
    $metadesapap = $row['metadesap'];
    $metaKeyapapED = trigger_change('AP_render_content', $metaKeyapap);
    $metadesapED = trigger_change('AP_render_content', $metadesapap);
    }
  if (isset($page['section']) and $page['section'] == 'additional_page') {
    if (!empty($metaKeyapapED)) {
    $template->append('related_tags', array('name' => $metaKeyapapED));
    }
    if (!empty($metadesapED)) {
    $template->assign('PLUG_META', $metadesapED);
    }
  }
  }
}

Mais je me demandais s'il y avait une autre méthode pour ce faire, plugin perso, ou dupliquer le plugin pour en avoir une version alternative (et dans ce cas où modifier les infos pour le distinguer du plugin meta d'origine ?).

J'ai bien vu que les albums et les images avaient désormais des champs supplémentaires liés au plugin meta pour les mots clés et les description, mais étant donné que les albums ont déjà des descriptions et les images des description et des mots clés, cela mets peut être un peu de confusion au premier abord.

Autant pour les mots clés et description au niveau global je comprends tout de suite vu qu'il n'est pas possible d'en définir à la base, autant, pour les descriptions faut-il dans ce cas dupliquer ses descriptions dans les deux champs ou bien une subtilité m'a-t-elle échappée ?

Pour les mots clés, à la limite, j'y vois un intérêt dans le fait que le champs supporte extended description et que du coup on peut avoir du contenu en fonction de la langue choisie, mais en même temps, on peut aussi utiliser extended description dans l'intitulé des tags ce qui à terme est peut être moins fastidieux, sinon, les mots clés pour des albums peuvent en effet être judicieux par contre.

Merci d'avance à ceux qui pourront m'apporter quelques lumières là dessus.

Nicolas

ddtddt
2016-04-26 22:10:37

Bonsoir

Tu fais bien j'avais complètement oublié !

Hood
2016-04-26 22:03:01

Bonsoir,

Comme tu me l'écrivais, je me permets de relancer, et j'ose en profiter pour en rajouter une couche : serait il possible de générer des meta opengraph via le plug in ? en particulier un og:image qui pointe vers une url d'image ?

ddtddt
2016-04-18 22:31:59

Bonjour,

Oui oui on parle de la même chose

1/ oui sur la page des albums et des photos tu peux ajouter des mots clées en éditant l'album ou la photo.

2/ non pour l'instant le plugin ne remplit pas avec les tags je peux regarder pour faire cela mais je sais pas si je vais mettre cela par défaut.
(tu peux me refaire un message dans une semaine si je ne t'ai rien proposé

Hood
2016-04-18 22:30:49

Bon c'est bon j'ai compris une partie du problème, c'était lié au fait que j'utilise le thème stripped qui met la pétrasse dans les balises meta. J'ai appliqué la solution indiquée ici http://fr.piwigo.org/forum/viewtopic.php?id=20925 et j'ai vu réapparaitre les balises <meta keyword> et <meta description> qui n'apparaissaient plus auparavant.

La question reste toutefois, est il possible d'inclure les tags dans la balise <meta description> en plus du nom de l'image ?

Hood
2016-04-18 20:54:45

Merci de prendre le temps de répondre, mais je crois qu'on ne parle pas de la même chose. Si je prends comme exemple l'image suivante :

http://photos.daedalum.org/picture.php? … ategory/42

J'ai bien les tags { 2012 , New Zealand , P28B , Percival , Proctor , Wanaka } qui apparaissent dans l'onglet "Tags", ils sont dans la BDD Piwigo, pas de souci avec ca. J'ai aussi les exifs, affichés dans l'autre onglet en mode réduit, mais ce n'est pas le sujet.

Ma question, est
- dans toutes les pages de types album, le plugin Meta créé une balise <meta name="description" content="{Nom de l'album}"> dans le champ <head>,
- dans les pages de types images, je ne vois pas cette balise
- est ce que le plugin Meta pourrait créer la balise  <meta description> dans le champ <head> des pages images en récupérant automatiquement les tags, en l'occurence pour mon exemple :
<meta name="description" content="2012 , New Zealand , P28B , Percival , Proctor , Wanaka"> ?

En espérant ne pas te faire répeter... merci d'avance :)

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2024 · Contact