表示エラー
-
サイトのトップページとカテゴリの表示変更したところ、<?php the_permalink() ?>を3つ表示させたいんですが、2つはきちんと表示されますが、最後の1つが<?php the_permalink() ?>と入れても、
IDが123の場合
トップページ
http://XXX.com/123 のところ、
http://XXX.com/ とトップページのURL
カテゴリ
http://bicycle.lifezakka.com/category/20/とそのページのURLが表示されてしまいます。
-
どういう表示変更をして、どこにthe_permalinkを追加したのかが分かりませんが、the_permalink関数はループの中でしか使えません。特定のページのパーマリンクを取得したい場合はget_permalinkを使う方法もあります。
お返事ありがとうございます。
当サイトはショップとして運営しているので、横に並べています。
<DIV CLASS=”itemContainer”> <DIV CLASS=”itemImg”><A
HREF=”<?php the_permalink() ?>”>一つ目</DIV>
<DIV CLASS=”itemTitle”><A HREF=”<?php the_permalink()
?>” REL=”bookmark” TITLE=”<?php the_title();
?>”>二つ目</DIV> <DIV CLASS=”itemKakaku”><?php
$post = get_post_meta($post->ID, ‘post_id’, true); ?><FONT COLOR=”RED”>価格表示</FONT></DIV>
<DIV CLASS=”syosai”>“>三つ目</DIV><DIV
CLASS=”itemzaiko” HEIGHT=”500″><SPAN CLASS=”item_<?php
echo $post; ?>_StockStatusWord”></SPAN></DIV></DIV>主にこのような感じになっているんですが、三つ目のみうまくいきません。
<?php $post = get_post_meta($post->ID, 'post_id', true); ?>
たぶん、ここでグローバル変数$postを上書きしているせいかも…。
<?php $post_id = get_post_meta($post->ID, 'post_id', true); ?>
とか?ここで何をしているのかよく分かりませんが…。。
以前あるサイトに
<?php $post_id = get_post_meta($post->ID, 'post_id', true); ?>
を入れると書いてあったので入れたんですが、消すと
Catchable fatal error: Object of class stdClass could not be converted to string in /home/XXX/www/XXX/wp-content/themes/Coolweb/index.php on line 29
と出てしまいます。
index.phpの29行目でエラーが出ていますね。
index.phpをまるごと書いてもらったほうがいいと思います…。<?php
get_header();
?>
<DIV ID="container">
<IMG SRC="http://XXXX.com/img/arrow_529.gif" WIDTH="9"
HEIGHT="6" BORDER="0" ALIGN="middle"><IMG
SRC="http://XXXX.com/img/arrow_529.gif" WIDTH="9" HEIGHT="6"
BORDER="0" ALIGN="middle"><FONT COLOR="998066"
FACE="Comic Sans MS"> オススメ商品</FONT>
<CENTER>
<!–ここからランダムに記事を表示するコード。–>
<?php if (have_posts()) : query_posts(‘posts_per_page=9&orderby=rand’);
?>
<?php while (have_posts()) : the_post(); ?>
<?php $image = get_post_meta($post->ID, ‘article_image’, ‘post_id’,
true); ?>
<DIV CLASS="itemContainer">
<DIV CLASS="itemImg"><a href="<?php the_permalink();
?>"><IMG SRC="http://www.moshimo.com/item_image/<?php
echo $image; ?>/1/m.jpg" BORDER="0" WIDTH="80"
HEIGHT="80"></DIV></DIV>
<?php endwhile;endif; ?>
<!–ここまでがランダムに記事を表示するコード。–>
</CENTER>
<!– メッセージループ開始 –>
<!– プロダクト –>
<DIV ID="product">
<H2><IMG SRC="http://XXXX.com/img/arrow_529.gif" WIDTH="9"
HEIGHT="6" BORDER="0" ALIGN="middle"><IMG
SRC="http://XXXX.com/img/arrow_529.gif" WIDTH="9" HEIGHT="6"
BORDER="0" ALIGN="middle"><FONT COLOR="998066"
FACE="Comic Sans MS"> 新着商品</FONT></H2>
<center><?php query_posts($query_string . "&order=DESC");
?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<CENTER>
<!– 記事表示 –>
<?php //get article_i00mage (custom field) ?>
<?php $image = get_post_meta($post->ID, ‘article_image’, ‘post_id’,
true); ?>
<DIV CLASS="itemContainer">
<DIV CLASS="itemImg"><A HREF="<?php the_permalink()
?>"><IMG SRC="http://www.moshimo.com/item_image/<?php
echo $image; ?>/1/m.jpg" BORDER="0" WIDTH="80"
HEIGHT="80"></DIV>
<DIV CLASS="itemTitle"><A HREF="<?php the_permalink()
?>" REL="bookmark" TITLE="<?php the_title();
?>"><?php trim_str_by_chars( get_the_title(), 20 ); ?></DIV>
<DIV CLASS="itemKakaku"><?php $post = get_post_meta($post->ID,
‘post_id’, true); ?><FONT COLOR="RED">価格<div class=moshimo-stock
id=item_<?php echo $post; ?>></div><span class=item_<?php
echo $post; ?>_xShopPrice></span>円(税込)</FONT></DIV>
<DIV>"><IMG
BORDER="0" SRC="http://XXXX.com/wp-content/themes/Coolweb04_25/img/details.gif"
WIDTH="80"></DIV>
<DIV><A HREF="http://www.moshimo.com/cart/add?shop_id=00000&article_id=<?php
echo $post; ?>"><IMG BORDER="0" SRC="http://XXXX.com/wp-content/themes/Coolweb04_25/img/cart.gif"
WIDTH="80"></DIV>
<DIV CLASS="itemzaiko" HEIGHT="500"><SPAN
CLASS="item_<?php echo $post; ?>_StockStatusWord"></SPAN></DIV></DIV></CENTER>
<!– #記事表示 –><?php endwhile; ?><div style="clear: both;"></div><div style="text-align:
center">
<?php endif; ?>
</DIV></center>
<?php get_footer(); ?>宜しくお願いします。
このコードで、3つめにでてくる `<DIV CLASS=”itemTitle”><A HREF=”<?php the_permalink()
?>” REL=”bookmark” TITLE=”<?php the_title(); ?>”>` 部分のthe_permalink()が出力されないということですか?
2つめの`<DIV CLASS=”itemImg”><A HREF=”<?php the_permalink()
?>”>`との間で、特に何もしていないので、何か挙動が変わることは考えにくいのですが…。
- トピック「表示エラー」には新たに返信することはできません。