短縮URL取得ボタンを記事編集画面に設置する。

 

わたし、ブログ書いたらTwitterに書いたよーって
宣伝してるんですが、その時のURLが長くてきもいって
言われたり思ってたりしてたので、
短縮URL取得ボタンを記事編集画面に設置しました。

なのでこの度、
\短縮URLをTwitterに貼れるようになりました!/

 

参考:https://tamore.net/add-shorturl-button/

 

before

 

after:パーマリンク横に「短縮URL取得」ボタンが追加されました!

 

●やり方

wp-content/themes/twentyfifteen/functions.php

の終了行に以下を追記するだけです!
わたしの場合、使用していたテーマがTwentyFiftyなのでtwentyfifteen/以下のfunction.phpをいじります。
ご使用のテーマに合わせてください。

/**
 * 「短縮 URL を取得」ボタンを編集画面に表示させる
 */
add_filter( 'get_shortlink', function( $shortlink ) {return $shortlink;});

 

wp-admin/edit-form-advanced.phpを見てみると、
「短縮URLの取得」ボタンはデフォルトで隠してるみたいですね。

wp-admin/edit-form-advanced.php

// As of 4.4, the Get Shortlink button is hidden by default.
if ( has_filter( 'pre_get_shortlink' ) 
    || has_filter( 'get_shortlink' ) ) {
   $shortlink = wp_get_shortlink($post->ID, 'post');

   if ( !empty( $shortlink ) 
        && $shortlink !== $permalink 
        && $permalink !== home_url('?page_id=' . $post->ID) ) {
      $sample_permalink_html .= '<input id="shortlink" type="hidden" value="' 
            . esc_attr( $shortlink ) 
            . '" /><button type="button" class="button button-small" onclick="prompt(&#39;URL:&#39;, jQuery(\'#shortlink\').val());">' 
            . __( 'Get Shortlink' )
            . '</button>';
   }
}

 

 

●感想

こんな簡単だったのかとびっくりしました。

ただ、Twitterカードの表示確認ツール「Card validator」で確認してみると、

WARMでてる・・・見逃していいやつですか・・・?

JP_Stripes (Stripe ユーザーグループ)in 宮崎 Vol.2〜初登壇の反省付き〜

どうも!
先日、JP_Stripes (Stripe ユーザーグループ)in 宮崎 Vol.2
に行ってきました!
そこで、今回、初社外LTしてきました!\(^^)/
宮崎での開催は2回目ということでした。(1回目も参加してます)

 

黒レアらしいです!やったー

 

まずはじめに、
Stripe Japanの小島さんより、Stripeの概要説明がありました。

前回も概要説明はありましたが、内容が新しくなっていて聞き応えがありました。
わたしが気になったトピックは以下2点です。

<Stripe導入事例>
Cansell
行けなくなったホテル予約を売ったり、買ったりできるサービスらしく、
個人的にぜひ使ってみたいサービスだと思いました!
このサービスにもStripeが使われているとのことです。

SaaSを海外展開するために準備した3つのこと
Stripeを使った海外販売を通しての海外展開の大変さだったりを
詳細にまとめてくださってました。

<新機能!>
Isuuing  …APIでカードを作成
Terminal  …プラグラミング可能POS
Stripe + Twillio<pay> …シニアには良さそう

 

 

 

次に、quote 黒葛原 道さんより
「WordPress+WooCommerce+Stripeで作ってみてわかった、
簡単にECサイトを作る方法」

と題して、実際のオンラインショップquoteでStripeを導入したお話でした。
黒葛原さんは、デザイナーさんです。
購入フローふくめサイトの世界観も大事にしており、
Stripeだとそれを実現することができたようです。

\ 簡単に購入できる仕組みが欲しい /
運営側の、現場の、生の、お話が聞けて刺激になりました。

また、WPの開発ツールで、getflywheelというサービスがあるらしく、
わたしは知らなかったので、勉強になりました!

さらに、Stripeはクレカだけでなく、
ApplePayの決済対応も可能です。
そこで、ApplePayの

日本では、VISA カードは App 内や Web での支払いには使えません。

というこの仕様には初耳で、いい情報知れたなと思いましたー!
※店頭での支払いには対応してるらしいです。
参考: https://support.apple.com/ja-jp/HT201239

 

 

2番手で、私のLTでした。
「簡単決済「stripe」を導入してみる。」
という題名で、stripeのクイックスタートよりテストしてみた
の手順をまとめて、最後にデモしました^^
社外LTが初めてだったので、緊張しました。。。
詳しくは、Stripe決済をフレームワーク使わずに組み込んでみる!(PHP)
にまとめています。

<反省点>
– 自己紹介にインパクトが足らなかった。
– 声出し練習不足。
– 伝えたいことが、明確に出てなかった・まとめきれてなかった。
– 緊張で楽しめてなかった。次はもっと楽しみたい。

初LTということで、場数不足は当たり前に痛感しました。
これから、さらに経験値積んでいきたいと思います。
貴重な機会を提供してくださってありがとうございました!

 

 

最後に、イラスティックコンサルタンツ株式会社
緒方 宣行さん、野島 隆さんより
「もっと自由で柔軟に構築しよう!
Stripre決済にも対応した新しいカートシステム」
と題して、 Stripeを使ったAPIサービスのお話でした。

PHPとVue.jsを使ったサービスでした。
技術者の方が、
PHPerでPhpStorm使いというだけで共感わいちゃいました。

Stripeを使っての、
フロント側のデザイン自由度の高いサービスを作ることができる事例でした。
いろんなビジネスの可能性を感じました。

 

 

Stripeはじめキャッシュレスは安倍さんが擁護してるだけあって、
今後さらに注目していきたいなと思います!

JP_Stripesに参加すると毎回思うのですが、
ビジネスアイデアが沸けば、Stripeを使うことで一攫千金も夢じゃないなあ
っとしみじみ感じます。#JP_Stripes

 

WordPressのプラグインを作ってみる。

ソースコードはこちら
https://github.com/kin29/wp-plugin-test/tree/master/admin-header-message

 

プラグインって「ハードル高そう」って思ってました。

まだよくわかってないですが、思ったほど難しくなかったです!

 

参考:

https://wpdocs.osdn.jp/Main_Page

https://hatsuka.info/wordpress/gpl

 

 

コメントを以下のように記載すると、プラグインと認識してくれます。

/**
 * Plugin Name: AdminMessage Maker
 * Plugin URI: https://github.com/kin29/wp-plugin-test/tree/master/admin-header-message
 * Description: You can set your like message in admin-page header.
 * Version: 1.0.0
 * Author: kin29
 * Author URI: https://kin29.info
 * License: GPL2
 */
/*  Copyright 2018 ki29 (email : kin29.com@gmail.com)

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License, version 2, as
	published by the Free Software Foundation.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
*/

 

 

管理画面ではこんな感じ。

プラグイン詳細

 

 

「有効化」すると、こんななります。

左上に「hello,kin29!」と出てるのがプラグインのしわざです。

プラグインイメージ

 

\ソースの中身/

関数addTestは、WP_Admin_Barクラスの関数add_menuを使って、

idが my-menu のtitileが hello, kin29! のもの追加してます。(見たままw)

idに関しては、my-menuっていうのが既存であるのかと思ってましたが、

idの値はなんでもokでした。

titleの中身は表示させたい言葉はご自由に入れてください。

function addTest($x){
//$x='admin_bar_menu'
 $x->add_menu( array(
    'id' => 'my-menu',
    'title' => 'hello, kin29!'
  ) );
}
add_action('admin_bar_menu', 'addTest');

 

 

\add_action()何しとるん?/

グローバル変数の$wp_filterにキーとバリュー追加してるようですね。

上のコードを例にすると、

$wp_filter[‘admin_bar_menu’]に関数addTest()を追加したようです。

 

wp-include/plugin.phpより

function add_action($tag, $function_to_add, $priority = 10, $accepted_args = 1) {
	return add_filter($tag, $function_to_add, $priority, $accepted_args);
}
function add_filter( $tag, $function_to_add, $priority = 10, $accepted_args = 1 ) {
	global $wp_filter;
	if ( ! isset( $wp_filter[ $tag ] ) ) {
		$wp_filter[ $tag ] = new WP_Hook();
	}
	$wp_filter[ $tag ]->add_filter( $tag, $function_to_add, $priority, $accepted_args );
	return true;
}

 

 

 

\GPLとは?/

コメントアウトにある、License表記ですが、

部分はcodexでは以下のように書いています。

慣例として、標準プラグイン情報の次にプラグインのライセンス情報を書きます。多くのプラグインは WordPress と同じ GPL2、ないし GPL2 互換のライセンス (英文) を用いています。

多くのプラグインに沿って、GPL2と私は書いてます。

GPL=GNU General Public License。フリー(自由)ソフトウェアライセンスの事。WordPressやGithubなどはこのライセンスに属している。コピーライトの逆の「コピーレフト」であり、利用・改変・再配布ができる。GPLで配布したものが、再配布がされるとそれ自身もGPLとなり、自由の保証が広がっていき、良いコードがいろんな人の手で作られるのかなと思います。

 

 

\まとめ/

プラグインは意外と簡単にできる。(物によるが)

プラグイン情報(licenseとか)はちゃんと書こう!

 

アップデートしたら、wp-includeの変更きえた。

どうも、寒いですね。

 

WP上級者の方からしたら、この題名で離脱すると思います。
わたしはまだまだWPがわかっておりません。何卒、よろしくです。

 

カスタマイズしたいなら、テーマ(/wp-content/themes/)に手を加えるべきとのことです。
題名通り、WPのアップデートにより変更部分は消されてしまいます!!!

WPってアップデートの時に改定されたフォイルまるごと上書きしちゃうんですよね。

 

例えば、、、

Version 4.9.1
2017年11月29日、WordPress 4.9.1 にて
改訂されたファイル一覧

wp-admin/about.php
wp-admin/includes/class-wp-upgrader.php
wp-admin/includes/file.php
wp-admin/includes/meta-boxes.php
wp-admin/includes/misc.php
wp-admin/includes/plugin.php
wp-admin/includes/upgrade.php
wp-admin/js/theme.js
wp-admin/js/theme.min.js
wp-admin/theme-editor.php
wp-admin/user-new.php
wp-includes/class-wp-theme.php
wp-includes/feed.php
wp-includes/functions.php
wp-includes/general-template.php
wp-includes/script-loader.php
wp-includes/version.php
wp-includes/wp-db.php

参考:https://wpdocs.osdn.jp/Version_4.9.1

 

 

他のバージョンアップの差分ファイルでも大体が
wp-admin/とwp-inclide/以下ですね。
wp-contents/はほとんどないと思っていました。

しかし、wp-content/が変更されることもあるようです。

Version 4.8.3、Version 4.7.3では

wp-content/plugins

Version 4.7.1では

wp-content/themes/twentyseventeen/README.txt
wp-content/themes/twentyseventeen/style.css
wp-content/themes/twentyseventeen/functions.php
wp-content/themes/twentyseventeen/assets/js/customize-controls.js

Version 4.7.4では

wp-content/themes/twentyseventeen/footer.php
wp-content/themes/twentyseventeen/style.css
wp-content/themes/twentyseventeen/functions.php
wp-content/themes/twentyseventeen/template-parts/navigation/navigation-top.php
wp-content/themes/twentyseventeen/template-parts/post/content-excerpt.php
wp-content/themes/twentyseventeen/template-parts/post/content-gallery.php
wp-content/themes/twentyseventeen/template-parts/post/content-audio.php
wp-content/themes/twentyseventeen/template-parts/post/content-image.php
wp-content/themes/twentyseventeen/template-parts/post/content.php
wp-content/themes/twentyseventeen/template-parts/post/content-video.php
wp-content/themes/twentyseventeen/README.txt

Version 4.7.5

wp-content/plugins/akismet/_inc/img/logo-full-2x.png
wp-content/plugins/akismet/_inc/akismet.css
wp-content/plugins/akismet/_inc/akismet.js
wp-content/plugins/akismet/akismet.php
wp-content/plugins/akismet/class.akismet.php
wp-content/plugins/akismet/readme.txt

 

 

バックアップ大事ですね!

 

 

ちゃんとCodeXにも書いてありましたね。

NOTE - wp-includes と wp-admin ディレクトリおよびサブディレクトリ、そしてルートディレクトリ (たとえば index.php, wp-login.php 等)のすべての古いファイルを新しいものに置き換えて下さい。wp-config.phpについては安全ですので心配ありません。 wp-contentディレクトリをコピーする際には注意して下さい。wp-content ディレクトリ全体の置換ではなく、このディレクトリ内からファイルをコピーします。ここには現行のテーマやプラグインが含まれるため保持が必要でしょう。デフォルトや古いテーマを直接書き換えた場合も上書きしないように注意してください。変更が失われます(もっとも、新機能や修正が含まれるため、比較した方がよいですが...)。 最後にファイル wp-config-sample.php を参照して、現行の wp-config.php に追加すべき新しい機能が導入されていないかを確認してください。

 

次はちゃんとGit管理して、差分をじっくり見てみたいなと思います。