Comment récupérer la variable du LIEN A de l'article?

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • pmleconte
    a répondu
    Avec un peu de persévérance et quelques conseils, on finit par y arriver....

    Bonne continuation,

    Pascal

    PS: pensez à mettre cette discussion sur "Réglé"

    Laisser un commentaire:


  • jimmy42
    a répondu
    J'ai réussiiiiiiiiiii !!!!!!!!
    Voici le code que j'ai inséré en amont : $urls = json_decode($item->urls);
    Merci à tous pour vos précieux conseils !!!

    Laisser un commentaire:


  • jimmy42
    a répondu
    J'ai ajouté la ligne de code donnée par daneel. J'aurais peut-être dû la modifier avant?
    Que me conseillez-vous?
    Comme vous l'avez vu, moi et la programmation ça fait 2...

    Laisser un commentaire:


  • pmleconte
    a répondu
    Bonjour,

    En programmation objet, $this correspond à l'objet sur lequel vous êtes. Donc, s'il ne le reconnait pas c'est que vous n'êtes pas sur un objet...(voir https://www.php.net/manual/fr/language.oop5.basic.php)

    Sur votre code, en amont, vous avez $item->images qui semble fonctionner. Pourquoi avez-vous mis $this->item ?

    Pascal
    Dernière édition par pmleconte à 03/09/2019, 08h32

    Laisser un commentaire:


  • jimmy42
    a répondu
    J'ai donc ajouté le script mais le site est en erreur page blanche :Using $this when not in object context
    Voici le code de ma page :

    <?php
    /**
    * @package Joomla.Site
    * @subpackage mod_owl_carousel
    *
    * Copyright Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved.
    * @license GNU General Public License version 2 or later; see LICENSE.txt
    */

    defined('_JEXEC') or die;
    $item_images = json_decode($item->images);
    require_once (JPATH_BASE.'/components/com_content/helpers/icon.php');
    jimport( 'joomla.filter.filteroutput' );
    if($layout!='edit'){
    $canEdit = $item->params->get('access-edit');
    if ($canEdit) : ?>
    <!-- Icons -->
    <?php if ($canEdit || $item->params->get('show_print_icon') || $item->params->get('show_email_icon')) : ?>
    <?php echo JFilterOutput::ampReplace(html_entity_decode(JLayo utHelper::render('joomla.content.icons', array('params' => $item->params, 'item' => $item, 'print' => false)))); ?>
    <?php endif;
    endif;
    }
    $urls = json_decode($this->item->urls);
    $item_heading = $params->get('item_heading', 'h4');

    if ($params->get('item_title')) : ?>
    <<?php echo $item_heading; ?> class="item_title item_title__<?php echo $params->get('moduleclass_sfx'); ?>">
    <?php if ($params->get('link_titles') && $item->link != '') : ?>
    <a href="<?php echo $item->link;?>"><?php echo $item->title;?></a>
    <?php else : ?>
    <?php echo $item->title; ?>
    <?php endif; ?>
    </<?php echo $item_heading; ?>>
    <?php endif;

    if (!$params->get('intro_only')) :
    echo $item->afterDisplayTitle;
    endif;

    if ($params->get('show_tags', 1) && !empty($item->tags)) :
    $item->tagLayout = new JLayoutFile('joomla.content.tags');

    echo $item->tagLayout->render($item->tags->itemTags);
    endif;

    if ($params->get('published')) : ?>
    <time datetime="<?php echo JHtml::_('date', $item->publish_up, 'Y-m-d H:i'); ?>" class="item_published">
    <?php echo JHtml::_('date', $item->publish_up, JText::_('DATE_FORMAT_TPL1')); ?>
    </time>
    <?php endif;

    echo $item->beforeDisplayContent;

    if ($params->get('intro_image')):
    if (isset($item_images->image_intro) and !empty($item_images->image_intro)) :
    $imgfloat = (empty($item_images->float_intro)) ? $params->get('float_intro') : $item_images->float_intro; ?>
    <!-- Intro Image -->
    <figure class="item_img img-intro img-intro__<?php echo htmlspecialchars($params->get('intro_image_align')); ?>">

    <a href="<?php echo $urls->urla;?>">
    <img src="<?php echo htmlspecialchars($item_images->image_intro); ?>" alt="<?php echo htmlspecialchars($item_images->image_intro_alt); ?>">
    <?php if ($item_images->image_intro_caption): ?>
    <figcaption><?php echo htmlspecialchars($item_images->image_intro_caption); ?></figcaption>
    <?php endif; ?>
    </a>
    </figure>
    <?php endif;
    endif;

    echo $item->introtext; ?>

    <!-- Read More link -->
    <?php if (isset($item->link) && $item->readmore != 0 && $params->get('readmore')) :
    $readMoreText = JText::_('TPL_COM_CONTENT_READ_MORE');
    if ($item->alternative_readmore){
    $readMoreText = $item->alternative_readmore;
    }
    echo '<a class="btn btn-info readmore" href="'.$item->link.'"><span>'. $readMoreText .'</span></a>';
    endif; ?>

    Laisser un commentaire:


  • wabaw
    a répondu
    Cela veux dire qu'il faut ajouter la ligne donnée par daneel.
    Certaines partie du code d'un article sont encodées, comme les images ou les liens.
    Comme par exemple pour un lien qui est constitué de 3 parties, le texte porteur du lien, l'URL et la target.
    De la sorte cela doit marcher.

    Laisser un commentaire:


  • jimmy42
    a répondu
    Envoyé par daneel Voir le message
    Bonjour,

    il ne faut pas oublier également que le stockage des liens A B C est au format json. (comme indiqué dans default_link.php )

    Code PHP:

    $urls 
    json_decode($this->item->urls); 
    Ok mais qu'est-ce qui change du coup?

    Laisser un commentaire:


  • daneel
    a répondu
    Bonjour,

    il ne faut pas oublier également que le stockage des liens A B C est au format json. (comme indiqué dans default_link.php )

    Code PHP:

    $urls 
    json_decode($this->item->urls); 

    Laisser un commentaire:


  • jimmy42
    a répondu
    Je vois que ma variable est écrit en noir au lieu de bleu je pense qu'il faut la déclarer en amont, non?
    Cliquez sur l'image pour l'afficher en taille normale

Nom : Capture.JPG 
Affichages : 73 
Taille : 5,1 Ko 
ID : 2005918
    Dernière édition par jimmy42 à 02/09/2019, 11h52

    Laisser un commentaire:


  • jimmy42
    a répondu
    $item_url->urls->urla
    $item_url->urls->urla>targeta
    $item->urls->urla->targeta

    J'en essaie pas mal... Tout me renvoie sur la home

    Laisser un commentaire:


  • jimmy42
    a répondu
    Envoyé par wabaw Voir le message
    Bonjour, essayez
    $item->urls->urla
    Je n'en suis pas sûr. Sinon un print_r du $item devrait vous dévoiler tout l'array !
    J'ai essayé mais ça me renvoi sur la page d'accueil

    Laisser un commentaire:


  • lefabdu51
    a répondu
    dans le fichier default_links.php on as ceci :
    Code:
                $urlarray = array(
                array($urls->urla, $urls->urlatext, $urls->targeta, 'a'),
                array($urls->urlb, $urls->urlbtext, $urls->targetb, 'b'),
                array($urls->urlc, $urls->urlctext, $urls->targetc, 'c')
                );

    Laisser un commentaire:


  • wabaw
    a répondu
    Bonjour, essayez
    $item->urls->urla
    Je n'en suis pas sûr. Sinon un print_r du $item devrait vous dévoiler tout l'array !

    Laisser un commentaire:


  • jimmy42
    a répondu
    Voilà ce que j'ai dans mon script (module owl carousel)

    <figure class="item_img img-intro img-intro__<?php echo htmlspecialchars($params->get('intro_image_align')); ?>">
    <a href="<?php echo $item->link;?>">
    <img src="<?php echo htmlspecialchars($item_images->image_intro); ?>" alt="<?php echo htmlspecialchars($item_images->image_intro_alt); ?>">
    <?php if ($item_images->image_intro_caption): ?>
    <figcaption><?php echo htmlspecialchars($item_images->image_intro_caption); ?></figcaption>
    <?php endif; ?>
    </a>
    </figure>


    Or moi je ne veux pas que lorsque l'on clique sur l'image, le lien nous renvoi vers l'article complet mais vers le LIEN A défini dans l'article.
    EN rouge l'emplacement où je dois mettre la variable LIEN A

    Laisser un commentaire:


  • Comment récupérer la variable du LIEN A de l'article?

    Bonjour à tous,

    Je souhaite récupérer la variable du LIEN A de mon article pour l'utiliser dans un autre script.
    J'ai beau chercher dans les sites qui présentent la liste des variables joomla, je ne trouve pas.
    Quelqu'un pour m'aider?
    Ce lien apparait dans la classe "content-links-a"
    Merci
    Dernière édition par jimmy42 à 04/09/2019, 08h52

Annonce

Réduire
Aucune annonce pour le moment.

Partenaire de l'association

Réduire

Hébergeur Web PlanetHoster
Travaille ...
X