[画像とリンク]タブで設定した記事のリンクを、ブログのレイアウトで表示されるイントロテキストの下、[詳細]リンクの上または下に含めたいと思います。
私は記事default.phpからこれを含めようとしましたが、機能しません、何かが欠落しているか、完全に間違っています:
<?php if (isset($urls) && ((!empty($urls->urls_position) && ($urls->urls_position == '0')) || ($params->get('urls_position') == '0' && empty($urls->urls_position)))
|| (empty($urls->urls_position) && (!$params->get('urls_position')))) : ?>
<?php echo $this->loadTemplate('links'); ?>
<?php endif; ?>
誰でもこれを行う方法を教えてもらえますか?
私はコンテンツレイアウトをいじくり回す方法を知っており、blog_item.phpファイルのオーバーライドを作成しましたが、phpの専門家ではありません。
どんな助けでも大歓迎です。
レイラありがとう
リンクを表示するblog_item.php
オーバーライドファイルに次のコードを追加します。
<?php
$urls = json_decode($this->item->urls); // Create shortcut
if ($urls && (!empty($urls->urla) || !empty($urls->urlb) || !empty($urls->urlc))) :
?>
<div class="content-links">
<ul class="nav nav-tabs nav-stacked">
<?php
$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')
);
foreach ($urlarray as $url) :
$link = $url[0];
$label = $url[1];
$target = $url[2];
$id = $url[3];
if ( ! $link) :
continue;
endif;
// If no label is present, take the link
$label = ($label) ? $label : $link;
// If no target is present, use the default
$target = $target ? $target : $params->get('target'.$id);
?>
<li class="content-links-<?php echo $id; ?>">
<?php
// Compute the correct link
switch ($target)
{
case 1:
// open in a new window
echo '<a href="'. htmlspecialchars($link) .'" target="_blank" rel="nofollow">'.
htmlspecialchars($label) .'</a>';
break;
case 2:
// open in a popup window
$attribs = 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=600,height=600';
echo "<a href=\"" . htmlspecialchars($link) . "\" onclick=\"window.open(this.href, 'targetWindow', '".$attribs."'); return false;\">".
htmlspecialchars($label).'</a>';
break;
case 3:
// open in a modal window
JHtml::_('behavior.modal', 'a.modal'); ?>
<a class="modal" href="<?php echo htmlspecialchars($link); ?>" rel="{handler: 'iframe', size: {x:600, y:600}}">
<?php echo htmlspecialchars($label) . ' </a>';
break;
default:
// open in parent window
echo '<a href="'. htmlspecialchars($link) . '" rel="nofollow">'.
htmlspecialchars($label) . ' </a>';
break;
}
?>
</li>
<?php endforeach; ?>
</ul>
</div>
<?php endif; ?>
(このコードをcomponents\com_content\views\article\tmpl\default_links.php
からコピーしました。)