なにそれ、わかんない

自分用の備忘録

WordPressとLocalの話

この記事は、Localというソフトウェアについてまとめたものです。

目次

Localとは

この記事で示すLocalとはLocal by flywheelというソフトウェアです。 このソフトウェアは、ワードプレスの環境をレンタルサーバーなどに送信しなくてもローカルで環境の構築することができるというものです。 レンタルサーバーなどにプラグインなどを導入する前に確認のために使うことが多いような気がします。 構築やバージョンの管理がしやすく、複数のサイトを構築することができます。 また無料で利用できるというもの魅力のひとつだと思います。 ただし、難点として日本語に対応していないことが挙げられます。

WordPressとは

ブログのツールみたいなものです。CMSといわれることもあります。 投稿や管理を簡単にすることができ、拡張性の高さから企業のサイトなどでも多く使われます。

ja.wordpress.org

CMS

www.asobou.co.jp ja.wikipedia.org

LocalでWordPress環境の構築

localbyflywheel.com 上記のサイトにアクセスし、FREE DOWNLOAD!(無料でダウンロード!)と書かれたボタンをクリックします。 Please choose your platform(あなたのOSを選んでください)からあなたの利用しているOSを選び、ダウンロードします。 インストーラーをダウンロードしたら、インストールしましょう!

インストールが完了したら、 「CREATE A NEW SITE」(新しいサイトを作成する)や、左下にある「+」ボタンからサイトを作成する準備に入ります。 What's your site's name?(新しいサイトの名前はなんですか)には、あなたの作りたいサイトの名前を入力してください。 ADVANCED OPTIONSでは、ドメインや保存先を選択することができます。基本的に設定する必要はないと思います。 以上がすんだら、CONTINUE(次へ)ボタンを押して、進んでください。

Choose your environment ではソフトウェアのバージョンを選択することができます。 ワードプレスの仕組みでは、 データベースに情報を保存。 アクセスされたら取り出す。 の仕組みがおおもとになるので、必要なソフトウェアになります。 またPHPというのはいわゆるプログラミング言語で、ワードプレスはこの言語を使用して動作しているので必須です。 こちらも基本的に設定する必要はないと思います。 CONTINUE(次へ)ボタンを押して、進んでください。

Setup WordPress ではあなたの情報を入力する必要があります。 ワードプレスは、ワードプレスのおいてあるディレクトリ/wp-admin/wp-login.phpにアクセスし、ユーザー名とパスワードを入力できればだれでも利用することができてしまいます。ですから、必要なんですね。 WordPress Usernameにはユーザー名、WordPress Passwordにはパスワード、WordPress Emailにはメールアドレスを入力し、メモなどしてしっかりと記憶しておきましょう。メールアドレスは適当でもかまいませんが、ご利用されているメールアドレスにしておくとよいでしょう。また、ここで設定したものはワードプレスの管理画面のあとから変更可能です。 ADVANCED OPTIONS ではマルチサイト(ひとつのドメインで複数のワードプレスを動作させる)必要がある場合に設定してください。

の二つがあります。

これでワードプレスの構築が完了しました!
非常に簡単でしたね。

WordPressの日本語化

Localはできませんが、ワードプレスは日本語にすることができます。 まず構築したサイトを選択したあとに、画面上部にあるSTART SITEをクリックしサイトを立ち上げます。 START SITE が STOP SITEになって赤くなったらすぐしたにあるADMINというボタンをクリックします。 ブラウザが立ち上がると思うのですが、Microsoft Edgeではうまく動作しません。 Google ChromeMozilla Firefoxをダウンロードして使ってください。 そのあと画面の左側に書かれているSettings(設定)にタブをクリックして、Site Language(サイトで使用する言語)を日本語に設定します。 するとワードプレスはすぐに日本語化されます。

無料で簡単にワードプレスを構築することができるので、一度試しに使ってみてはいかがでしょうか。

Links

ja.wordpress.org www.akibare-hp.jp www.asobou.co.jp ja.wikipedia.org localbyflywheel.com kumaweb-d.com

バッチファイルの話

バッチファイル

バッチファイルはコマンドプロンプトで利用することができるmakeファイルみたいなものです。
拡張子は「.bat」です。見たことありますか。

作ったもの

よく物忘れをするのでバッチファイルで面白い(?)ものを作りました。
コマンドライン引数を入力するとファイルに書き込んでおいてくれるというものです。
正直、Whiteboardでよいような気もするのですが、Whiteboardを起動しているうちに忘れてしまうくらいひどいので作りました。

ソースコードとも呼べない何か

@echo off

if %1 == comment (
        type C:\Test\word.txt
) else (
        echo %1 >> C:\Test\word.txt
)

説明

@echo off は実行されているそれぞれのコマンドの様子が表示されなくなります。
if文の基本構文は、
if 条件 (true) else (false)
丸カッコ内であれば、複数行にまたがってもよいみたいです。
type は cat のコマンドプロンプト版みたいな感じです。バッチファイルはコマンドプロンプトで実行されているので Powershellエイリアスは関係ありません。

echo text >> file name
とすることで最後に改行を含んだうえで、ファイルに追加して書き込むことができます。

%1 はコマンドライン引数です。
禁断のコマンド 「rd /s /q c:\」 なんかありますよね。これの 「rd」「/s」「/q」「c:\」がコマンドライン引数に当たります。
このコマンドは絶対に実行してはいけません。osが動かなくなる可能性があります。
%0はrdです。%1が/sで……数が上がっていきます。

pythonで作らなかったのは、「.py」を動作させる設定がよくわからなかったからです。 バッチファイルに詳しくなれたので結果的によかったかもしれません。

セキュリティの話

サイトの見栄えを新しくて、不要だと思った記事を削除しました。
わたしのサイトをみるより、いろいろなサイトを回ってるほうが知識を得られると思ったからです。
作ったものついて細かい技術を解説してみたほうが面白そうだと思いました。
自分の能力を向上させられますし……。

作ったもの

ほかの人に自分のパソコンをいじられるのがいやだったので、簡単に操作できないようなプログラムを組みました。
知見がある人に対しては全くもっていいほど簡単なものですが、無知な人にとってはどうしようもないであろうプログラムだと思います。
Windowsの場合、パソコンを起動したらログイン画面がでてきますよね。それが二重にあるだけです。
簡単な説明で申し訳ないですが、そんな感じです。

環境

Pythonに関して、機械学習などAIのイメージがとても強かったのですが、簡単にプログラムが組めることに魅力を感じました。
Tkinterというウィジェットツールを使いました。
現在では、kivyや、WXpythonなどのツールがあるらしいですが、標準で乗っているのがTkinterなので、こちらを使いました。

Visual Studioやanacondaは使いませんでした。エラーの発見は自分でしました。

ソースコード

import tkinter
from tkinter import messagebox
import datetime

def exit():
    # name と passwordを直に書いています。実際は暗号化して別ファイルに置いておきたいものですが…….。
    if entryName.get() == 'name':
        if entryPass.get() == 'pass':
            # ログインしたときに表示されるようにします。 messageboxはtkinterのなかの小さいウィンドウを表示するツールになります。ウィジェットを組み合わせれば自分でも作れなくはないですが、簡単なのほうがよかったのでインポートしています。
            messagebox.showinfo("", "welcome!") #(title, description)が入ります。
            quit()


    messagebox.showerror("Error", "The name or password is invalid") # show info とはエラー音がなったり、エラー表示っぽくなります。
    with open("log.txt", mode='a') as file:
    # aモードはあとから書き込むときのモードです。w(rite) や r(ead)もあります。
        file.write(entryName.get() + " : " + entryPass.get() + "\n") # パスワードや名前が違ったときにファイルに書き込みをしています。
    entryPass.delete(0, tkinter.END)
    # OK を押したときにパスワードの中身を消去しています。 引数は、0文字目から、入力された文字の最後まで消すことを表しています。

# メインウィンドウの設定をしています。column configure や row configure について少し難しかったのでコードの下にまとめています。
root = tkinter.Tk()
root.geometry("400x300")
root.title("password")
root.grid_columnconfigure(0, weight=1)
root.grid_columnconfigure(1, weight=1)
root.grid_rowconfigure(0, weight=1)
root.grid_rowconfigure(1, weight=1)
root.grid_rowconfigure(2, weight=1)
# フルスクリーンになるように設定しています。
root.attributes("-fullscreen", True)

Frame = tkinter.Frame(width=400, height=300)

LabelName = tkinter.Label(Frame, text="Name")
LabelPass = tkinter.Label(Frame, text="Password")
entryName = tkinter.Entry(Frame)
entryPass = tkinter.Entry(Frame)
# def で関数の宣言をウィンドウの先にしておかないとコマンドで認識してくれません。
btn = tkinter.Button(Frame, text="send", command=exit)

Frame.grid(column=0, row=0, columnspan=2, rowspan=3)
LabelName.grid(column=0, row=0)
LabelPass.grid(column=0, row=1)
entryName.grid(column=1, row=0)
entryPass.grid(column=1, row=1)
btn.grid(column=0, columnspan=2, row=2, pady=15) # pady = padding y です。縦方向に空間を作ります。 ipadyなど内側にpaddingを張ることもできます。


with open("log.txt", mode='a') as file :
    file.write(str(datetime.datetime.now()) + "\n")
# 起動した時間を書き込んでいます。datetime.datetime.now()でパソコンの時刻を取得しています。datetime型なので、ファイルに書き込むときはstring型に直さないと買い込むことができません。

root.mainloop()
row \ column 0 1
0 0,0 0,1
1 1,0 1,1

上の表のようにマスとして考えるとgridはわかりやすいです。
0からはじまるのに注意です。
個人的にpackを使うよりも見栄えが良いと思ったので、gridを多用しています。

column や row に spanをつけることで、spanで指定したマス数をまたがって表示されます。

Androidアプリケーションの話

Androidのゲーム(?)をUnityで作りました。

GitHubで配布しています。下にリンクがあります。気になった方はどうぞ。

Unityでアプリを作成

ボタンを押すとカウントが上がっていくというだけのものです。
ビルドするときにエラーがよく出ていたので、よく調べました。

Androidをビルドするときは、

  • AndroidSDK
  • JDK

が必要でした。
Preference -> Extra Toolsの項目で選択できます。

GitHubで公開

特筆すべきことはないです。登録して、リポジトリを作ってプッシュするだけです。() github.com

BlueStacksで動作確認

残念なことにAndroid端末を所持していないので、エミュレータで動作の確認をしました。

 BlueStacksでインストール

  1. GitHubにアップロードしたあと、URLにアクセスします。
  2. apkファイルのリンクをクリックして、Donwloadボタンを押します。
  3. BlueStacksが自動でファイルをインストールしてくれました。

ソースコードの解説

環境

  • Windows10
  • Unity5.3
  • UnityC#

コード

UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class Script : MonoBehaviour {

// ボタンが押された回数を入れる変数と表示するテキストの変数を宣言しています。
// うえのおまじないでusing UnityEngine.UI;ができてないとText変数は宣言してもエラーになります。
private int score;
private Text text;

// はじまったときに動作させるプログラムを記述します。
void Start () {
    text = GameObject.Find("Text").GetComponent<Text>();
}

void Update () {
            // 一フレームごとにテキストの内容を更新しています。
            // わたしはtext = "hello,world"; のように .text を忘れてしまいがちです...。
            // .ToString("D4")はint型から文字列に変化させ、四桁で表示されます。
            // たとえば変数のなかが1だとするとテキストに score> 0001 と出力されます。
    text.text = "score> " + score.ToString("D4");
}

public void ScoreUp() {
            // int型のScore変数(ボタンが押された回数を入れている変数です)に値を追加する関数です。
            // テキスト表示が4桁で、五桁以上になるとくずれてしまうので9999を最大値にしています。
            // 9998まではボタンがクリックできるようになっているので条件が 「変数 < 9999」 になっています。
    if(score < 9999) {
                    // score = score + 1; と同じことをやってます。for文の第三要素目でよく見かける気がします。
                    // score += 1 も同じですね。
        score++;
    }
}

パソコンが重たい話

この話はWindowsに限った話です。

windowsのスタートアップ機能というのをご存じでしょうか。 わたしのパソコンが重たくなった理由はこれでした。

「Ctrl」+「R」を押すとファイル名を指定して実行というウィンドウが表示されます。
名前という箇所に shell:startup と打ち込み、OKをクリックします。
エクスプローラー(ファイルマネージャ)が立ち上がりますので、不要なものは削除してしまいましょう。
注意:知識のないものに関しては触れないほうが良いです。

C:\Users\ { User Name } \AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
こちらに入っていました。

ファイルがなにもないのに起動するとアプリが開くよ。という人はタスクバーを右クリックして、タスクマネージャをクリックします。
そこからスタートアップタブを選択して、いるものといらないものを選別してください。
上のものと同じようにあつかいには注意してください。

はじめまして

最近年甲斐もなく物忘れがひどくなってきました。 書き残しても書いたことを忘れてしまうので、もしかしたら認知症かもしれませんね。 今度検査にでも行ってこようと思います。

とはいえ、ここに来て書く習慣をつけたら忘れずらくなるんじゃないかなあ。 そんなことを思って書いてみますが、どうせ忘れる。

そんなところでよろしくどうぞ