phpMyAdminで「unknown system variable 'lc_messages'」となる場合の対処

July 13,2021 11:55 PM
Category:[Linux]
Tag:[Linux, PHP, phpMyAdmin]
Permalink

phpMyAdminで「unknown system variable 'lc_messages'」となる場合の対処方法を紹介します。

1.問題点

phpMyAdminをインストールしてアクセスしたところ、「unknown system variable 'lc_messages'」というエラーが発生しました。

(クリックで拡大)
「unknown system variable 'lc_messages'」というエラー

どのサイトを調べても「php.iniの設定を変更してmysqli拡張を有効にする」「php-mysqlがインストールされていない」とありますが、その問題ではないようです。

2.原因

PHPのバージョンは7.3で、MySQLのバージョンが5.1であることが原因のようです。

MySQL5.5以上にすることで解決します。

MySQL5.5にアップデートする方法は別の記事で紹介します。

3.参考サイト

参考サイトは下記です。ありがとうございました。

phpmyadminのエラーの原因と解決方法を教えてください。

Comments [0] | Trackbacks [0]

Linux(CentOS)でapxsがみつからない場合の対処

July 6,2021 11:55 PM
Category:[Linux]
Tag:[]
Permalink

Linux(CentOS)で、apxsがみつからない場合の対処方法を紹介します。

1.問題点

apxsは「APache eXtenSion tool」の略で、phpと連携させるためのモジュール生成等で必要なのですが、サーバに存在しません。

# apxs
-bash: apxs: command not found

ということで、apxsがみつからない場合の対処方法を紹介します。

2.apxsがみつからない場合の対処

httpd-develをインストールすることで解決します。

# yum install httpd-devel
 :
Installed:
  httpd-devel.x86_64 0:2.2.15-69.el6.centos
 
Dependency Installed:
  apr-devel.x86_64 0:1.3.9-5.el6_9.1        apr-util-devel.x86_64 0:1.3.9-3.el6_0.1     cyrus-sasl-devel.x86_64 0:2.1.23-15.el6_6.2     expat-devel.x86_64 0:2.0.1-13.el6_8
  openldap-devel.x86_64 0:2.4.40-16.el6
 
Complete!

これでインストールされました。

# apxs
Usage: apxs -g [-S <var>=<val>] -n <modname>
       apxs -q [-S <var>=<val>] <query> ...
       apxs -c [-S <var>=<val>] [-o <dsofile>] [-D <name>[=<value>]]
               [-I <incdir>] [-L <libdir>] [-l <libname>] [-Wc,<flags>]
               [-Wl,<flags>] [-p] <files> ...
       apxs -i [-S <var>=<val>] [-a] [-A] [-n <modname>] <dsofile> ...
       apxs -e [-S <var>=<val>] [-a] [-A] [-n <modname>] <dsofile> ...
Comments [0] | Trackbacks [0]

Movable Type 7のコンテンツデータ(コンテンツタイプアーカイブ)をページ分割する方法

June 23,2021 11:55 PM
Category:[ページ分割]
Tag:[MovableType, PageBute]
Permalink

Movable Type 7のコンテンツデータ(コンテンツタイプアーカイブ)をページ分割する方法を紹介します。

1.はじめに

Movable Type 7のコンテンツデータ(個別ページ)をページ分割する方法です。

ページ分割にはPageButeプラグインを利用します。

テンプレート種別でいうところの、「コンテンツタイプリストアーカイブ」をページ分割するのは情報があるようですが、「コンテンツタイプアーカイブ」をページ分割する情報がないようなので、本記事で紹介します。

なお、分割するにあたっては下記の条件となります。

  • 分割対象はコンテンツタイプ内の特定のコンテンツフィールド(テキスト(複数行))のみ

分割する方法は2つあるので、順番に説明します。

サンプルでは、分割するコンテンツフィールドの名前を「本文」としています。

2.コンテンツデータ(コンテンツタイプアーカイブ)をページ分割する(その1:コメント挿入)

まず、コンテンツタイプアーカイブテンプレートを次のように設定します。

前半の5行がコンテンツフィールドのページ分割、残りの部分はごちゃごちゃしてますがページネーションのためのテンプレート(Pagebuteの公式サイトから引用)です。

<mt:PageContents count="1">
  <mt:ContentField content_field="本文">
    <mt:ContentFieldValue><$mt:PageSeparator$>
  </mt:ContentField>
</mt:PageContents>
 
<mt:Pagination>
  <mt:PaginationHeader>
<div class="pagenate"><ul>
    <mt:IfPaginationFirst><li><a class="link_before" href="<$mt:PaginationFirst$>">&lt;&lt;</a></li></mt:IfPaginationFirst>
        <mt:IfPaginationPrev><li><a class="link_before" href="<$mt:PaginationPrev$>">&lt;</a></li></mt:IfPaginationPrev>
  </mt:PaginationHeader>
  <mt:IfPaginationCurrent>
    <mt:ignore>現在のページ</mt:ignore>
  <li><span><mt:PaginationLink element="number"></span></li>
  <mt:Else>
    <mt:ignore>それ以外(遷移用のリンクあり)</mt:ignore>
    <li><a href="<$mt:PaginationLink$>"><$mt:PaginationLink element="number"$></a></li>
  </mt:IfPaginationCurrent>
  <mt:PaginationFooter>
    <mt:IfPaginationNext><li><a class="link_next" href="<$mt:PaginationNext$>">&gt;</a></li></mt:IfPaginationNext>
    <mt:IfPaginationLast><li><a class="link_next" href="<$mt:PaginationLast$>">&gt;&gt;</a></li></mt:IfPaginationLast>
</ul></div>
  </mt:PaginationFooter>
</mt:Pagination>

そして、コンテンツデータ作成時、コンテンツフィールド「本文」に対し、ページ分割したい箇所に

<!-- Separator for PageBute -->

を挿入します。

たとえば以下のように挿入します。

本文(1ページ目)
 :
本文(1ページ目)
 
<!-- Separator for PageBute -->
 
本文(2ページ目)
 :
本文(2ページ目)
 
<!-- Separator for PageBute -->
 
本文(3ページ目)
 :
本文(3ページ目)

3.コンテンツデータ(コンテンツタイプアーカイブ)をページ分割する(その2:mtevalモディファイアを利用)

まず、コンテンツタイプアーカイブテンプレートを次のように設定します。

<mt:PageContents count="1">
  <mt:ContentField content_field="本文">
    <mt:ContentFieldValue mteval="1"><$mt:PageSeparator$>
  </mt:ContentField>
</mt:PageContents>
  
<mt:Pagination>
  <mt:PaginationHeader>
<div class="pagenate"><ul>
    <mt:IfPaginationFirst><li><a class="link_before" href="<$mt:PaginationFirst$>">&lt;&lt;</a></li></mt:IfPaginationFirst>
    <mt:IfPaginationPrev><li><a class="link_before" href="<$mt:PaginationPrev$>">&lt;</a></li></mt:IfPaginationPrev>
  </mt:PaginationHeader>
  <mt:IfPaginationCurrent>
    <mt:ignore>現在のページ</mt:ignore>
    <li><span><mt:PaginationLink element="number"></span></li>
  <mt:Else>
    <mt:ignore>それ以外(遷移用のリンクあり)</mt:ignore>
  <li><a href="<$mt:PaginationLink$>"><$mt:PaginationLink element="number"$></a></li>
  </mt:IfPaginationCurrent>
  <mt:PaginationFooter>
    <mt:IfPaginationNext><li><a class="link_next" href="<$mt:PaginationNext$>">&gt;</a></li></mt:IfPaginationNext>
    <mt:IfPaginationLast><li><a class="link_next" href="<$mt:PaginationLast$>">&gt;&gt;</a></li></mt:IfPaginationLast>
</ul></div>
  </mt:PaginationFooter>
</mt:Pagination>

そして、コンテンツデータ作成時、コンテンツフィールド「本文」に対し、ページ分割したい箇所に

<$mt:PageSeparator$>

を挿入します。

たとえば以下のように挿入します。

本文(1ページ目)
 :
本文(1ページ目)
 
<$mt:PageSeparator$>
 
本文(2ページ目)
 :
本文(2ページ目)
 
<$mt:PageSeparator$>
 
本文(3ページ目)
 :
本文(3ページ目)

3.その他のコンテンツフィールドについて

ページ分割対象でないコンテンツフィールドは、MTPageContentsタグの外に書くか、中に書くかで表示方法が変わります。

  1. MTPageContentsタグの中に書く:1ページ目のみに表示
  2. MTPageContentsタグの外に書く:すべてのページに表示

1.の書き方の例は下記です。

<mt:PageContents count="1">
商品名:<mt:ContentField content_field="商品名"><mt:ContentFieldValue></mt:ContentField>
価格:<mt:ContentField content_field="価格"><mt:ContentFieldValue></mt:ContentField>
  <mt:ContentField content_field="本文">
    <mt:ContentFieldValue mteval="1"><$mt:PageSeparator$>
  </mt:ContentField>
</mt:PageContents>
 :

2.の書き方の例は下記です。

商品名:<mt:ContentField content_field="商品名"><mt:ContentFieldValue></mt:ContentField>
価格:<mt:ContentField content_field="価格"><mt:ContentFieldValue></mt:ContentField>
<mt:PageContents count="1">
  <mt:ContentField content_field="本文">
    <mt:ContentFieldValue mteval="1"><$mt:PageSeparator$>
  </mt:ContentField>
</mt:PageContents>
 :
Comments [0] | Trackbacks [0]
 1  |  2  |  3  |  4  |  5  | All pages