2018年 10月 の投稿一覧

MastodonウィジェットをWordPressに正しい方法で読み込ませる

以前紹介した方法ではまたエラーがでた

以前のブログ記事
Mastodonのウィジェット
で紹介したMastodonのウィジェットでしたが、また違うエラーが出てしまい動かなくなったので、修正方法をまとめたいと思います。

エラーの内容

トップページでは表示されるが、2ページ目以降に移動した時にウィジェットが表示されなくなるという状況でした。

Chromeでのエラーの内容は
Failed to load resource: the server responded with a status of 404
というエラーで、CSSファイルとJSファイルを見失っている状態でした。

エラーが発生する設定方法

ダウンロードした3つのファイル(CSS・JSファイル)をWPがインストールされているディレクトリ直下に置き、その後、Insert Headers and Footersプラグインでヘッダー内にマストドンウィジェット作成ウィザードで生成された1つ目のコードを記述するという方法でした。

エラーが発生しない正しい読み込ませ方

WordPressでCSSやJSを読み込ませるにはfunctions.phpに関数を用いて記述する方法が正しいようです。

まず、ファイルの置く位置を変更します。
自分はwp-contentの下にmastodon-widgetというディレクトリを作ってそこに3つのファイル(CSS・JS)を入れました。

次に、外観-テーマの編集からfunctions.phpに以下を追記します。
以下は記述例です。URL等個々の環境に合わせて変えてください。

function twpp_enqueue_styles() {
	wp_enqueue_style( 'mastodon-widget-css', '/wp-content/mastodon-widget/mastodon.widget.css' );
}

add_action( 'wp_enqueue_scripts', 'twpp_enqueue_styles' );

function twpp_enqueue_scripts() {
	wp_enqueue_script( 'mastodon-widget-js','/wp-content/mastodon-widget/mastodon.widget.js' );

	wp_enqueue_script( 'mastodon-widget-jp-js','/wp-content/mastodon-widget/mastodon.widget-jp.js' );
}

add_action( 'wp_enqueue_scripts', 'twpp_enqueue_scripts' );

wp_enqueue_style関数は
wp_enqueue_style( ‘スタイル名’, ‘CSSまでのURL’ );
wp_enqueue_script関数は
wp_enqueue_script( ‘スプリクト名’, ‘JSまでのURL’ );
で書かれています。
スタイル名・スプリクト名は他と被らないようにしてください。

最後に、Insert Headers and FootersプラグインのHeaderの記述欄に、マストドンウィジェット作成ウィザードで生成された1つ目のコードのうち、4行目以降の

<script>
jQuery(document).ready(function() {
から
</script>

までを記述します。

サイドバーに表示させるには、外観-ウィジェットのページでカスタムHTMLを使いマストドンウィジェット作成ウィザードで生成された2つ目のコードを記述します。

以上でエラーなくMastodonウィジェットをWordPressで使うことができます。

Ubuntu Server 18.04 LTS Nginx インストール

Ubuntu Server 18.04 LTS でのNginxのインストールを備忘録としてまとめておきたいと思います。

Nginxインストール

$ sudo apt install nginx

設定ファイルを編集

$ cd /etc/nginx/sites-available/
$ sudo nano default

#46行目 サーバネーム変更
server_name hoge.hoge;

$ sudo systemctl restart nginx

サーバにウェブブラウザでアクセスし、デフォルトページが表示されればインストール完了です。
お疲れ様でした。

Ubuntu Server 18.04 LTS タイムゾーン設定

Ubuntu Server 18.04 LTS でのタイムゾーン設定を備忘録としてまとめておきたいと思います。

タイムゾーン設定

$ sudo timedatectl set-timezone Asia/Tokyo

#確認する
$ sudo timedatectl

以上でタイムゾーン設定は完了です。お疲れ様でした。