WordPress

BuddyPressをカスタマイズ

BuddyPressプロフィール一覧上部に、カスタム文章を表示する。さらに、表示・編集で切り替える。


add_action('bp_before_profile_field_content', 'account_details_display_howto' ); // 登録画面文章表示
add_action('bp_before_account_details_fields', 'account_details_display_howto' ); // 登録画面文章表示
// 新規アカウント登録時のタイトル設定
function zam_before_register_page() {
echo "<h2>" . get_the_title(6) . "</h2>";
return "";
}

登録メンバー一覧のサムネイルや、掲載情報を修正する場合は

/home/ippin-dou/www/test/wp-content/plugins/buddypress/bp-templates/bp-legacy/buddypress/members/members-loop.php を直接修正するか、add_action(bp_directory_members_item, functionxxxx) を追加すればよい。

プロフィールの一覧上部に任意の文章を追記する

Buddypressでプロフィール表示画面の、一覧表となる上部にBuddyPressのプロフィール拡張プラグイン『Buddypress xProfile Rich Text Field』で追加・追記した文章を表示させます。
以下のコードでは、プロフィール項目A,B,Cの項目を表示させる処理です。add_action() でアクションフックに登録し、プロフィール情報をecho させるのみです。

$count_loop = FALSE; // 同一画面で複数回CallBackされたカウント
add_action( 'bp_before_profile_field_content', 'bp_before_profile_func');
function bp_before_profile_func(){
    global $count_loop;
    global $bp;
    
    // 初回のみ表示させる
    if($count_loop) return ;
    else $count_loop = TRUE;
    // echo bp_displayed_user_id();
    $profile_title="タイトル";
    $corp_name = xprofile_get_field_data('[プロフィール項目A]', bp_displayed_user_id());  
    $corp_picture = xprofile_get_field_data('プロフィール項目B', bp_displayed_user_id());  
    $catchecopy = xprofile_get_field_data('プロフィール項目C', bp_displayed_user_id());  
    if($catchecopy != "")  $profile_title = $catchecopy;

    $profile_descript= xprofile_get_field_data('プロフィール項目D' ,bp_get_member_user_id());
    $profile_text = nl2br($profile_descript);
    echo <<<_PROFILE_INF_
	<h2>{$corp_name}</h2>
	{$corp_picture}
        <strong id="bf_profile_title">{$profile_title}</strong>
        <p id="bf_profile_desc">{$profile_text}</p>
_PROFILE_INF_;
}

ジョブマネージャーの求人情報の画像コピーをDuplicatePostで有効にする

WordPressでJobManager(ジョブマネージャー)を使用した求人サイト制作時にDuplicatePostを利用して求人情報のコピーを楽にできるようにした際、求人情報に付与される画像データ(メタ情報は画像IDが入っている)コピーがされなかったので対処しました。

duplicate-post/duplicate-post-admin.php の編集

続きを読む

wordpress ジョブマネージャーで求人フォームに反映されない不具合

現在リリースされている最新ジョブマネージャーver0.7.22 (2015/7/20リリース)では、ジョブ設定の『求人フォーム設定』で項目を追加していくと19項目以降の設定項目名・表示タイプが変更できなくなる不具合があります。

以下、ソースadmin-jobs-settings.php の jobman_job_setup_updatedb()を修正。求人設定の項目Keyでなく応募設定の項目配列Keyで評価していた模様。


// if( array_key_exists( $id, $options['fields'] ) ) {
if( array_key_exists( $id, $options['job_fields'] ) ) {

WordPress ジョブマネージャーで検索フォームを作成する

前回の続き。WordPressのジョブマネージャーというプラグイン。求人情報を管理するには便利なのですが、検索機能としてはカテゴリー毎のソートやキーワード検索しか提供されていません。

ジョブマネージャーの管理「設定」から求人フォームを任意に作成できるのでそれに対応した複数の項目毎にチェックボックスを作成しすべての項目をORでとれるような実装を行いました。

1.検索フォームをfunction.phpで作成します。

イメージはこんな感じ

search

続きを読む

post branchで作成したブランチ記事を予約投稿する

以前紹介したWordPressのプラグインの記事『wordpress post branchプラグインを編集する』についでのネタ記事です。

post branchでブランチ記事を作成した場合、その記事が未来日時の公開設定にすると1つの記事の場合は自動的に『予約済み』→『公開済み』となるのですが、複数記事を同じように未来日時の公開設定とした場合、2つ目以降の記事が『予約済み』→『予約投稿失敗』となります。

今回は、複数のブランチ記事を予約投稿したした場合でも自動的に『予約済み』→『公開済み』にさせる編集をします。

続きを読む

県内の大学様にてウェブサイト講習を行いました。

近年のウェブ事情やスマートフォン利用動向、SNSの活用とSEO、動画活用等について広く浅く講習を半日行いました。

当日お集まりいただきました方々には感謝いたします。ありがとうございました。

講習内容

午前:ウェブの活用について(1) – WordPressの使い方 –

WordPressとは?WordPressの基本的な基本方を実習しました。

20140909_092346

午後:ウェブの活用について(2) – YouTube・SNSの利活用 –

昨今のウェブサイトとSNSの関わり合いや、FaceBook、Twitter等のセキュリティ対策、スマートデバイスによるICT教育活用の事例やセキュリティについてのお話しを実例交えてしました。

 

 

 

WordPress記事のパーマリンクを制御する

ここ数回は地元の紹介だったので、久しぶりにWordPress記事を記載します。WordPressの記事・固定ページ・カスタム投稿などでパーマリンクがあります。今回はこのパーマリンクの表示・制御を行います。

以下の3項目ともfunction.php内に記載することで対処できます。WordPress3.6のみ動作確認済みです。

wp-parmalink

:パーマリンク全体の表示制御

『パーマリンク: http://xxxxx [編集]』という部分を見えなくさせます。

WPのフィルタでget_shortlinkというフィルタを使うようです。フィルタ内ではそのままreturn false 返却してください。

add_filter( 'get_shortlink' , '__return_false' );

:『編集』ボタン表示制御

固定ページの『編集』ボタンのみ見えなくさせます。
get_sample_permalink_htmlというフィルタはパーマリンク部分表示時のfilterのようです。WordPress3.6では[編集]ボタンがspanタグのedit-slug-buttonsクラスで囲まれているので、そこを空文字置換して表示しています。

add_filter( 'get_sample_permalink_html' , 'hide_edit_shortlink' );
function judge_get_shortlink( $permalink_html ){
    global $post;
    if($post->post_type == 'page'){ // 固定ページのみ[編集]ボタンを非表示にさせる
        $permalink_html = preg_replace( "/<span id=\"edit-slug-buttons\">(.*)<\/span>/" , "" , $permalink_html );
    }
    return $permalink_html;
}

参考URL

http://ja.forums.wordpress.org/topic/21239

wordpress post branchプラグインを編集する

postbranchプラグインは、WordPressの公開ページを残したままクローンページを作成してくれるプラグインです。正直、非常に便利なプラグインではあります。

MTや国内高級CMSは、裏方(バックグラウンド)で編集できるような機能が搭載されています。裏で『下書きを作成』『チェック』→『公開ページに反映』というように公開ページと裏方の作業が分かれています。

ところがWordPressの場合は公開したページに対して変更を加える場合、裏方というものはなく、公開ページをそのまま編集するか、一度『下書き』に戻してから編集しなければいけません。一度『下書き』にした状態でページ修正している間、そのページは外部から閲覧できなくなるんです。こういった事を回避できるプラグインがwp-post-branchです。

公開済みのページや記事に対して、『ブランチ作成』でクローンページを作成し『公開』時にクローンページをオリジナルのページへ上書きしてくれます。(図解がない伝わりにくいです)

こちらの説明が分かりやすいです。

WordPressのかゆいところに手が届かなかったものを実現してくれているので助かります。

これは便利と使ってみたのですが、今回の使い方に合わせるにはいくつか修正が必要だったので備忘メモです。

続きを読む