it-swarm-tr.com

Joomla Etiketleri Sonuç Sayfasını Değiştir

Makale giriş metnimi ve öğe resmimi Joomla Etiketleri için sonuç sayfasındaki tam makaleye bağlantıyla göstermek istiyorum.

Bunu yapmanın bir yolu var mı veya beklenen sonuçları almak için kodu nasıl değiştirebilirim?

\ Com_tags\views\tag\tmpl\default_items.php <?php echo $this->item->introtext; ?> Bileşenlerini eklemeye çalıştım, ancak diğer durumlarda olduğu gibi orada çalışmıyor. Ben yeterince iyi php bilmiyorum, bu yüzden başka öneriler olup olmadığını bilmek istiyorum.

Teşekkürler

4
gag

Bunu deneyin (Joomla 3.3.0'da test edildi ve çalıştı):

Bu kodu girin:

<?php
//introtext
echo $item->text;
//image
$images  = json_decode($item->core_images);
echo '<img src="'.$images->image_intro.'">';
//get category name by id
$db = JFactory::getDbo();
$id = $item->core_catid;
$db->setQuery("SELECT cat.title FROM #__categories cat WHERE cat.id='$id'");
$category = $db->loadResult();
echo '<p>'.$category.'</p>';
?>

bu dosyaya:

templates/yourtemplate/html/com_tags/etiket/default_items.php

kopyalanması gereken:

bileşenleri\com_tags\görünümler\etiketi\tmpl\default_items.php

bu iki satır arasında

<?php foreach ($items as $i => $item) : ?> //Line 63 <?php endforeach; ?>

Etiket çıktısını değiştirmek için bu değişkenlerden herhangi birini (<?php echo $item->useonefromthelist; ?>) Kullanabilirsiniz:

type_alias
content_item_id 
core_content_id
match_count 
tag_date
core_title
core_alias
core_body
core_state
core_access 
core_metadata
core_created_user_id 
core_created_by_alias 
core_created_time 
core_images 
core_modified_time 
core_language 
core_catid 
core_publish_up 
core_publish_down 
content_type_title 
router 
author 
author_email 
link 
displayDate
event
text
core_params

Bu listeyi nasıl alabilirim?

<pre>
<?php print_r($item); ?>
</pre>
7
Joomla Agency

Bu çözüm kendim için çok iyi çalıştı. Giriş metni hala çok uzundu, bu yüzden 300 karaktere kısalttım. Aşağıya bakınız. Ana kodu h3 etiketinden hemen sonra ilk cevapta ekledim ve daha sonra giriş metin bölümünü değiştirdim. Kategori adını kullanmadım. Ben daha fazla bağlantı ve ayrıca için ana makaleye bağlantı ekledi ...

İşte h3 etiketi de dahil olmak üzere Joomla 3.6'da kullandığım toplam kod ...

<h3>
<a href="<?php echo JRoute::_(TagsHelperRoute::getItemRoute($item->content_item_id, $item->core_alias, $item->core_catid, $item->core_language, $item->type_alias, $item->router)); ?>">
<?php echo $this->escape($item->core_title); ?>
</a> 
</h3>

<?php
//image
$images  = json_decode($item->core_images);
echo '<p><img class="intro-image" src="'.$images->image_intro.'"></p>';                  
//introtext
$limit =300;
if (strlen($item->text) > $limit) {
echo (substr($item->text, 0, $limit)) ?> <a href="<?php echo JRoute::_(TagsHelperRoute::getItemRoute($item->content_item_id, $item->core_alias, $item->core_catid, $item->core_language, $item->type_alias, $item->router)); ?>">...</a>
<?php
}
else {
echo $item->text;
}
?>
<p>
<a class="read-more" href="<?php echo JRoute::_(TagsHelperRoute::getItemRoute($item->content_item_id, $item->core_alias, $item->core_catid, $item->core_language, $item->type_alias, $item->router)); ?>">Read more</a>
</p> 
0
Donald Ax

İlk olarak, şablon geçersiz kılmanın yerinde doğrudan düzenlenmesi önerilmez.

Google html, daha fazla bilgi için, ancak kısaca, yukarıdaki durum için geçersiz kılar:

  • tmpl klasörünü\com_tags\views\tag bileşeninden template/yourtemplate/html/com_tags/dizinine kopyalayın
  • etiketi olarak yeniden adlandır

Bir güncelleme sonrasında üzerine yazılmayacağı yerde düzenleyebilirsiniz.

Yukarıda yapmak istediğiniz şey için bence bunu düşündüğünüzden daha karmaşık bulacaksınız. Bir etiketin bir makaleden daha fazlasına bağlı olduğu durumlarda hangi çıktıyı istersiniz? Burada yapacağım şey, zaten istediğiniz şeylerin çoğunu yapan bir modülü değiştirmeye bakmak. "Benzer Etiketler" modülü gibi bir şey. Bunun değiştirilmiş bir versiyonunu oluşturmak ve bunu etiket sonuç sayfasına çağırmak daha kolay olurdu.

0
BodgeIT