Home arrow Joomla!でサイト管理 arrow FAQ arrow [Joomla! FAQ]WebリンクのリンクURLが自分のサイト?
[Joomla! FAQ]WebリンクのリンクURLが自分のサイト? プリント

Joomla!にはリンク集を簡単に作れるコンポーネントがあります。登録にはリンクするサイト名、URL、そのサイトの説明を入力するだけです。
作成したリンク集を確認してみると、本当に簡単にリンク集が出来てしまいますが、リンクしている<a>タグ部にマウスをあわせてみると、リンク先が下記のようになってしまいます。 

http://www.fulldigit.net/component/option,com_weblinks/task,view/catid,20/id,1/


Joomla!はクリックした回数を記録するようになっている関係で、このようになっているのだと思いますが、相互リンクを張ってもらったりすると、これでは相手方に分かり難いですよね。

リンク先を直接のURLに変更できないかパラメータを探してみましたが、残念ながら見当たらなかったので、私の場合、PHPのプログラムを修正することにしました。

修正するプログラムは、「Webリンク」コンポーネントの表示部分です。

修正したプログラム名: /components/com_weblinks/weblinks.html.php
修正箇所: 172行目

 

<td height="20">
<?php echo $txt; ?>  ←ここで<a>tタグ付きタイトルを表示しています。
<a href="<?php echo $row->url; ?>" target="_blank"> <?php echo $row->title; ?> </a>
<?php
if ( $params->get( 'item_description' ) ) {
    ?>
    <br />
    <?php echo $row->description; ?>
    <?php
}
?>
</td>


下記のように修正します。

 

<td height="20">
<a href="<?php echo $row->url; ?>" target="_blank"> <?php echo $row->title; ?> </a>
  ↑リンクするURLとタイトルを別々に取得し、直リンクを作ります。

<a href="<?php echo $row->url; ?>" target="_blank"> <?php echo $row->title; ?> </a>
<?php
if ( $params->get( 'item_description' ) ) {
    ?>
    <br />
    <?php echo $row->description; ?>
    <?php
}
?>
</td>


通常は特に必要のないプログラム修正ですが、プログラムは簡単に修正できますので、必要な方は是非お試しあれ。