<?php // 7日以内の記事に新着マーク表示 if( get_the_time( 'Ymd' ) + 7 > date( 'Ymd' ) ) { ?> <div class="new">NEW</div> <?php } ?>
何度も書いてるけど、毎度分からなくなるので…。
index.phpやside.phpに設置するなら以下。
リンク付、カウント付。※201611/10修正
<?php $args = array( 'orderby' => 'name', 'order' => 'ASC', 'hide_empty' => false, ); $terms = get_terms( 'タクソノミー名', $args ); foreach ( $terms as $term ) { $term_link = get_term_link( $term, 'タクソノミー名' );//リンク取得 echo '<div>' .$term->name. '</div>' .esc_url( $term_link ). '(' .$term->count; } ?>
引数などの詳細はCodexを。
http://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/get_terms
関数リファレンス/get terms
下記をループ内へ設置。
<?php $p_type = get_post_type( $post );//所属するposttype名を取得 $obj = get_post_type_object( $p_type );//$p_typeのposttype情報を取得 $p_name = $obj->labels->singular_name;?>//posttypeのラベル名を取得
で、$p_nameをechoで出力すればOKでした。
2度ハマったのでメモ。
さくらVPS構築したてのサイトで、どうしてもメールが届かない。
WordPressでユーザーを増やした時に送られる自動メールも動作していない。
最小構成でPHPで作ったmail関数も動いてないっぽい。。
PHP7だから?sendmailの設定?postfixの設定?どうしてだろう?
結論、サーバが「お試し期間中」だからでした。
さくらVPSは「お試し期間中」はメール送信に制限があるんだと。
でもこれ、以前サーバ担当者に聞いたことあったんだよな…(遠い目)。
忘れてました。
教訓
「人は物事を忘れる
そして、人は同じ過ちを繰り返す」
以上です。
WordPressで投稿ページや固定ページ等に入力フォームを使うとき、下記のように書くと画面遷移した時に404になる。
<input type="text" name="name" placeholder="氏名" required/>
name=”yourname”などにすればOK。
地味にはまったのでメモ(こればっかりや)。
投稿記事の公開ステータスを取得する。
https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/get_post_status
関数リファレンス/get post status
ループの中に下記を記述。
$post_id = get_the_ID(); $post_status = get_post_status( $post_id );
$post_statusにステータス情報が入っているので、それを用途に合わせて加工する。
http://www.4web8.com/9395.html
参考にしたサイト様 / ありがとうございます。
思いのほかハマってしまったのでメモ。
タクソノミーテンプレートであれば、何も考えず下記を記述する。
TermIDを取得
<?php echo get_term_by('slug',$term,$taxonomy)->term_id ?>
nameを取得
<?php echo get_term_by('slug',$term,$taxonomy)->name ?>
取得した後、get_term_childrenで子タームを持つ/持たないで表示を分岐させました。
できて良かった。
【参考】下記サイトを参考にさせて頂きました。
http://technolog.jp/website/cms/6208
引き継いだWordPressサイトで、ユーザーに勝手にパスワード変更のメールが送信されてしまう不具合がありました。調べましたが、引き継いだサイトなのでよく分からない。結局、下記のコードをfunctions.phpに書くことで、メールを送信しないように設定しました。
functions.php
add_filter( 'send_email_change_email', '__return_false' );
原因は調査中です。
WordPressのバージョンが不具合が多かった4.3だったり、前任者がプラグインのコードを書き換えたりしていたり、とても怪しいのですが…。
【参考】WordPressの管理画面で、ユーザーのメールアドレスとパスワードを変更した際に送信されるメールをカスタマイズする方法
http://office7f.com/2015/10/19/pass_change_email/
【その他】正と負を反転
Scratchでプログラミングをしていて、マイナスをプラスを入れ替えたい時、この式を使いました。どうなんだろう。他に方法は…。
y=x-x*2
※グラフ
https://www.google.co.jp/#q=x-x*2&tbs=lr:lang_1ja&lr=lang_ja
javaだと簡単にできるのですね。
http://www.javadrive.jp/start/ope/index2.html
要研究。以上です。
<<追記>>
あ、下記でいいのか…。
y=0-x
また、PHPでもマイナスつければ反転するとのこと
【参考】PHPで数字のプラスとマイナスを反転させる
http://taitan916.info/blog/?p=148
少しはまったのでメモ。
タクソノミーページでターム名を表示させたい時、single term titleをよく使うのですが、
single term titleを変数にして使おうとしたところ、1度しか表示されず「????」の状態に。
結論、パラメータを付けないと変数では使えないで、変数で使いたい時は下記とのこと。
<?php $current_term = single_term_title("", false); ?>
Codexはちゃんと読もう。。
[参考]関数リファレンス/single term title
https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/single_term_title