http://suin.asia/2011/02/25/run_mamp_without_password
投稿者: doggstar
カスタム投稿タイプのアーカイブページへのリンクコード
http://memocarilog.info/wordpress/theme-custom/5085
アドレスのみ取得する方法
合わせ技 変動可
<a href="<?php echo get_post_type_archive_link( get_post_type() ); ?>"> <?php echo esc_html( get_post_type_object( get_post_type() )->label ); ?> </a>
http://ja.forums.wordpress.org/topic/9361
http://rriinnddoouu.lolipop.jp/blog/2012/11/17/324
普通のカテゴリーページへのリンクは以下のコードで出来るようです。未確認
<a href="<?php echo get_category_link('カテゴリID');?>">もっと見る »</a>
カスタム投稿名取得
http://ja.forums.wordpress.org/topic/8509
<?php echo esc_html( get_post_type() ); ?> 参考:ラベルを表示する場合 単数形 <?php echo esc_html( get_post_type_object( get_post_type() )->label ); ?> 単数形 <?php echo esc_html( get_post_type_object( get_post_type() )->labels->singular_name ); ?>
ポストオーサー
こういうコードを書くらしい
http://www.sol-wear.com/?author=1
これでオーサーテンプレートでユーザーID 1の情報出力
だから
<a href="http://www.sol-wear.com/?author=<?php $user_id = get_the_author_meta( 'id' ); ?><?php echo $user_id; ?>"> </a>
と書いてポストオーサーのオーサーページへのリンク
実意用例
<a href="<?php include("link0.php") ?>?author=<?php $user_id = get_the_author_meta( 'id' ); ?><?php echo $user_id; ?>"> <?php $prof_photo_id = get_the_author_meta('prof_imgs'); $prof_photo_img = wp_get_attachment_image_src($prof_photo_id, 'prof_img'); echo '<img src="' .$prof_photo_img[0] . '"style="float:left; margin-right:14px; margin-bottom:14px;">' ?> </a>
URL0マスターをインクルードしてリンクを張り
ユーザー画像をクリックでユーザー紹介ページへ飛ばす
そんでもって
ポストタイプを指定しても出来るみたい
昔書いてたコード
<a href="http://d-marking.com/d_temp1/?post_type=post&author=<?php $user_id = get_the_author_meta( 'id' ); ?><?php echo $user_id; ?>"><?php the_author_nickname(); ?></a>
post_type=postをいれるみたいだから単に他のポストタイプも行けそう
オーサーページ出力
オーサーページへ飛ばすリンク出力コード
記事中
<?php the_author_posts_link(); ?>
アーカイブで一覧が出力されるが
オーサーphpをいれればそちらが出る
ワイルノループをけしたです。
<div class="top_new"> <div style="padding-top:30px;"></div> <?php if ( have_posts () ) : the_post(); ?> <!--アバター--> <div class="prof_img2"> <?php $prof_photo_id = get_the_author_meta('prof_imgs'); $prof_photo_img = wp_get_attachment_image_src($prof_photo_id, 'prof_img2'); echo '<img src="' .$prof_photo_img[0] . '">' ?> </div> <!--ニックネーム--> <div class="prof_title"><?php the_author_meta(user_nicename); ?></div> <div class="prof_posi">SOL Market Department</div> <div class="prof_comment"> <div class="prof_comment_box"> <div class="prof_comment_box_in"> <?php //ユーザープロフ改行 $user_data = get_userdata($author); echo wpautop( $user_data->description ); ?> <?php echo wpautop(get_the_author_meta('user_description')); //これも改行あり?> </div> </div></div> </div class="top_new"> <?php endif; ?> <?php wp_reset_query(); ?>
.prof_img2 { background-image: url(../img/sol_auther.png); background-repeat: no-repeat; height: 144px; width: 144px; padding: 14px; float: left; } .prof_comment { } .prof_comment_box{ overflow: hidden; background-image: url(../img/sol_auther_comment.png); background-repeat: no-repeat; background-position: left top; padding-left: 15px; } .prof_comment_box_in { background-color: #CCC; overflow: hidden; padding-top: 15px; padding-right: 30px; padding-bottom: 15px; padding-left: 30px; } .prof_title{ font-size: 35px; padding-left: 20px; overflow: hidden; } .prof_posi{ font-size: 15px; overflow: hidden; padding-left: 20px; padding-top: 10px; padding-bottom: 10px; }
こんな感じ
サムネイルサイズ追加時 注意点
//サムネイルサイズ増やす trueが強制切り抜き add_image_size( 'prof_img', 70, 70, true ); add_image_size( 'event_sam', 105, 105, true ); add_image_size( 'event_sam2', 140, 140, true );
ハイフンはやめとけ 上手くでなくて???ってなって他の名前つけたら出たから 上のアンダーバーとか
add_image_size( 'event-sam', 105, 105, true ); add_image_size( 'event-sam2', 140, 140, true );
ユーザーアバター
■Simple Local Avatarsプラグイン使用
■Advanced Custom Fields(アドバンスカスタムフィールドを使う)
フィールドグループに
prof_imgs
宛先をユーザーページに
出力1
<?php $prof_photo_id = get_the_author_meta('prof_imgs'); $prof_photo_img = wp_get_attachment_image_src($prof_photo_id, 'event-sam'); echo '<img src="' .$prof_photo_img[0] . '">' ?>
出力2
<?php $title= get_the_title(); echo wp_get_attachment_image(get_the_author_meta('prof_imgs'),event-sam,0,array('alt'=>$title,'title'=>$title)); ?>
Single phpにもループ基本処理を書く事!
オーサーが出ないでないと悩んだら なんと!
ループ宣言していなかったから!
ただそれだけで 死ぬほど遠回りした!
welcart 右上にログイン名前
<?php if(usces_is_membersystem_state() || usces_is_cart()): ?> <ul class="subnavi"> <?php if(usces_is_membersystem_state()): ?> <li><a href="<?php echo USCES_MEMBER_URL; ?>"><?php if(usces_is_login()){printf(usces_the_member_name('return')); echo ' さん';}else{echo 'ゲストさん';} ?></a></li> <?php endif; ?> <?php if(usces_is_cart()): ?> <li><a href="<?php echo USCES_CART_URL; ?>"><img src="img/cart2.png" width="19" height="16"></a></li> <?php endif; ?> </ul> <?php endif; ?>
Custom Field Suite のまとめ
http://komodo.arrow.jp/wp/733#wysiwyg
http://lilacmimosa.jp/blog/wordpress-custom_field_suite-loop-file_upload.html
http://memo352.blog119.fc2.com/blog-entry-355.html
※注意:フィールドループで投稿すると
画像一件だけ出力する方法が分からない。
つまり記事一覧でサムネイルにできない
記事一覧で 項目なら 一個目だけ表示できない。
出し方が分からない
ポストタイプは作れないが
カスタムポストを使いやすくするプラグイン。
なんか分かりやすい操作感。
■カスタムフィールドで画像ギャラリー
ギャラリーフィールド event_photos (loop)
にフォトフィールド event_photo(file)
を保存後上手にドラッグイン
配置ルール
投稿タイプは指定する。
出力方法
ループフィールド
<?php//宣言 $fields = $cfs->get('event_photos'); foreach ($fields as $field) : ?> <!--シンプルライトボックス用rel--> <a rel="slb slb_group[111111]" href=" <?php //イメージFULL URLを取得 $attachment_id = $field['event_photo']; $sample_photo = wp_get_attachment_image_src($attachment_id, "full"); print $sample_photo[0]; ?> "> <?php //イメージを取得 さらに記事タイトルを取得しライトボックス キャプションを入れ替えるためalt titleを追加 //wp_get_attachment_imageの関数?は4個詳しくは該当際サイトで $title= get_the_title(); $attachment_id = $field['event_photo']; $sample_photo = wp_get_attachment_image($attachment_id, "event-sam",0,array('alt'=>$title,'title'=>$title)); echo $sample_photo; ?> </a> <?php endforeach; ?>
以下はお試しでやったループフィールドじゃない時のやつ 例えば カスタムフィールドテンプレートや 単発画像など
<!--シンプルライトボックス用rel--> <a rel="slb slb_group[111111]" href=" <?php //イメージFULL URLを取得 $img_url =wp_get_attachment_image_src(get_post_meta($post->ID,"event_photo",true),'full'); print $img_url[0]; ?> "> <?php //イメージを取得 さらに記事タイトルを取得しライトボックス キャプションを入れ替えるためalt titleを追加 //wp_get_attachment_imageの関数?は4個詳しくは該当際サイトで $title= get_the_title(); echo wp_get_attachment_image(get_post_meta($post->ID,"event_photo",true),event-sam,0,array('alt'=>$title,'title'=>$title)); ?> </a>
さらにキャンプションのテキストフィールドを作り
ライトボックスのキャプションにいれるようにした。
入れない場合も考へ分岐
//分岐 キャプション蟻 $title = $field['photo_cap']; if (empty($title)): $title= get_the_title(); endif;
ここが分岐emptyは空白なら〜という分岐らしい 初
完成コード
<div class="top_titol">EVENT PHOTO</div> <div class="event_photo"> <?php $fields = $cfs->get('event_photos'); foreach ($fields as $field) : ?> <a rel="slb slb_group[111111]" href=" <?php $attachment_id = $field['event_photo']; $sample_photo = wp_get_attachment_image_src($attachment_id, "full"); print $sample_photo[0]; ?> "> <?php //分岐 キャプション蟻 $title = $field['photo_cap']; if (empty($title)): $title= get_the_title(); endif; $attachment_id = $field['event_photo']; $sample_photo = wp_get_attachment_image($attachment_id, "event-sam",0,array('alt'=>$title,'title'=>$title)); echo $sample_photo; ?> </a> <?php endforeach; ?> </div>
サイズ購入と在庫管理
商品ごとにサイズ別在庫を抱える場合
商品 sol006
にSKLをサイズごとに
sol006-s
sol006-m
sol006-l
sol006-xl
と分ける。
カートを複数出力しサイズごとにカートへボタン設置
<!--カート--> <div class="single_cart"> <table cellspacing="0"><tbody> <?php //単品の場合ループ宣言 //usces_have_skus(); ?> <?php //の場合複数ループ宣言 //while (usces_have_skus()): ?> <?php do { //ページ内にこの前にusces_have_skus()を使った場合こう書く 2回目ってこと?> <tr><td><span class="zaikostatus"><?php usces_the_itemSkuDisp() ?></span></td><td><span class="zaikostatus2"><?php usces_the_itemZaiko(); ?></span></td><td><span class="zaikostatus2"> 数量 </span><?php usces_the_itemQuant(); ?></td><td> <?php usces_the_itemSkuButton(カートへ入れる); ?></td> </tr> <?php //endwhile; ?> <?php } while (usces_have_skus()); ?> </tbody> </table> </div>
郵便番号から住所を自動で表示 AjaxZip3 welcart編
wp_head()の後に記入(SSLの場合)
<script src="https://ajaxzip3.googlecode.com/svn/trunk/ajaxzip3/ajaxzip3-https.js " type="text/javascript" charset="UTF-8"></script> <script type="text/javascript"> //<![CDATA[ jQuery(function(){ var addr_de = function(){ AjaxZip3.zip2addr(this,'','delivery[pref]','delivery[address1]','delivery[address2]'); }; var addr_me = function(){ AjaxZip3.zip2addr(this,'', 'member[pref]', 'member[address1]', 'member[address2]'); }; var addr_cu = function(){ AjaxZip3.zip2addr(this,'','customer[pref]','customer[address1]','customer[address2]'); }; switch($('#zipcode').attr('name')){ case 'delivery[zipcode]': $('#zipcode').change(addr_de).keyup(addr_de); break; case 'member[zipcode]': $('#zipcode').change(addr_me).keyup(addr_me); break; case 'customer[zipcode]': $('#zipcode').change(addr_cu).keyup(addr_cu); break; } }); //]]> </script>
*追記 2013/6/17
これで動作しない方は、$をjQueryに書き換えてみてください。
商品の編集をログイン中出す。
<?php edit_post_link('この商品を編集', '<div class="henshu">', '</div><div style="clear:both"></div>'); ?>
.henshu { } .henshu a { color: #FFF; background-color: #333; background-image: url(../img/body_backgr/body_background_white11.png); background-repeat: repeat; padding: 10px; text-decoration: none; overflow: hidden; float: left; }
ファンクション
//アイテムページの編集をアイテム編集ページに add_filter('edit_post_link', 'my_edit_post_link'); function my_edit_post_link($output) { if(usces_is_item()){ $output = str_replace('post.php?post', 'admin.php?page=usces_itemedit&post', $output); } return str_replace('<a ', '<a target="_blank" ', $output); }
商品追加方法
商品に品番をつける 例 sol001
アップ前に
メイン写真に品番をつける 例 sol001.jpg
写真をアップロード
商品マスターより商品追加
最低限必要な項目
商品コード 例 sol001
商品名 例 SOLブランドTシャツ6
SKU価格
SKUコード sol006 (sol006-S sol006-M sol006-L sol006-XL)
売価(円) 5800
カテゴリー
ベストセラー
インストするとウィジェットにwelcart BESTセラーがでる
サイドバーを使える様にして
指定の位置へ
<?php dynamic_sidebar('Widgets 1'); ?> <div style="clear:both;"></div>
ベストセラーにサムネイル、順番を画像で出力したり、指定クラスをつける
ファンクションへ
//welcartベストセラー サムネイル+順位表示が画像 add_filter('usces_filter_bestseller', 'my_bestseller_func', 10, 3); function my_bestseller_func() { $args = func_get_args(); list($html, $post_id, $index) = $args; $post = get_post($post_id); if ( $index == 0 ){ $img = 'img/1.png'; } elseif ( $index == 1 ){ $img = 'img/2.png'; } elseif ($index == 2){ $img = 'img/3.png'; } else { } $list = '<li class="side_rank"><a href="' . get_permalink($post_id) . '"><img src="' . $img . '" width="24" style="padding-bottom:0px;" /> <br/>' . usces_the_itemImage(0, 175, 267, $post, 'return' ) . '<br>' . $post->post_title . '</a></li> '; return $list; }
Jクエリ カルーセル ラミール ベストセラー商品など
<!--カルーセルスライダー--> <script type="text/javascript" src="js/jquery.jcarousel.min.js" ></script> <script type="text/javascript"> jQuery(document).ready(function() { jQuery('#mycarousel').jcarousel({ // 表示設定 scroll: 1, auto: 2, wrap: 'both', }); }); </script>
<div id="mycarousel"> <ul> <li> <p class="img"><a><img></a></p> <p class="title"><a>タイトル</a></p> </li> <li> <p class="img"><a><img></a></p> <p class="title"><a>タイトル</a></p> </li> </ul> </div>
どりでhtmlをphp
http://www.faramoon.com/3015.html
http://www.webopixel.net/dreamweaver/197.html
これいみある?
MAMPでPHPファイル以外でもPHPを実行可能
/Applications/MAMP/conf/apache/にあるhttpd.confをテキストエディタなどで開いて、135行目ぐらいにある以下の部分を修正する。
AddType application/x-httpd-php .php .phtml
この部分にPHPを実行させたいファイル形式の拡張子を追加する。
AddType application/x-httpd-php .php .phtml .html
編集したhttpd.confを保存してMAMPを再起動すれば、追加したファイル形式でPHPが動くはず。
ドリでのサイト設定例 面倒だからここに
■サイト
ローカルサイトフォルダ:/Applications/XAMPP/xamppfiles/htdocs/Dropbox/my_server/temp
■サーバー
ローカルネットワーク
サーバー:/Applications/XAMPP/xamppfiles/htdocs/Dropbox/my_server/temp
web url: http://localhost/Dropbox/my_server/temp/
テストにチェック
php echo中はalt=などはシングルクォーテーションで
echo "<img src='img/s1.png' alt='管理人の評判星1個'/>\n";