bbpressを使用したサイトでサイトの速度向上のご依頼があり、
サイトを覗くとバージョンがかなり古いため更新作業を申し出ました。
その後了承を得て更新作業をしたら、サイドバーに載っている情報のデザインが崩れリンク切れがおこりました。
原因は、テーマファイルに記述定義されたであろうショートコードを
サイドバー内のPHPコードで呼んでいたと推測します。
(更新後にこのショートコードは、サイト内ではサイドバー内以外に見つかりませんでした。)
その該当コードがこちらです。
<?php
$user = wp_get_current_user();
$name = str_replace(".", "-", $user->user_login);
?>
<div style="margin-top: 0px;" class="bbp-plink-button"><a style="color: 色;" href="https://あるサイト.com/">トップページへ戻る</a></div>
<?php if($user->ID) { ?>
<div style="margin-top: 10px;" class="bbp-plink-button"><a style="color: 色;"
href="https://あるサイト.com/follow/">フォロワーのトピック</a></div>
<div style="margin-top: 10px;" class="bbp-plink-button"><a style="color: 色;"
href="https://あるサイト.com/forums/users/<?php echo $name;?>/subscriptions/">お気に入りのトピック</a></div>
<?php } ?>
<div style="margin-top: 10px;">
<?php if( is_user_logged_in() ) : ?>
<?php echo do_shortcode('[ha-profilelink]'); ?>
<?php endif; ?>
</div>
この中のこちらの表示が
ボタンが自体なく[ha-profilelink]という表示のみになっていました。
<div style="margin-top: 10px;">
<?php if( is_user_logged_in() ) : ?>
<?php echo do_shortcode('[ha-profilelink]'); ?>
<?php endif; ?>
</div>
これを解決するためにまず
- サイト内で[ha-profilelink]を他にないか記述コードを探しました。
- コードを入れ替えてどのように効いていたのかを確かめました。
とりあえず上記はどちらもダメなことを確認し、
これらからPHPのコードで表示させないといけないと考えました。
<?php
$user = wp_get_current_user();
$name = str_replace(".", "-", $user->user_login);
?>
こちらが定義されているので、
$nameを出力すればプロフィール画面が出てくれると考えて
下記の記述で表示に成功しました。
<div style="margin-top: 10px;" class="bbp-plink-button"><?php if( is_user_logged_in() ) : ?>
<a style="color: 色;"
href="https://あるサイト.com/forums/users/<?php echo $name; ?>">プロフィールを確認
</a><?php endif; ?>
</div>
コメント