Categories
internet perisian

Integrasikan pengguna WordPress, bbPress dan MediaWiki

Artikel ini adalah nota percubaan saya untuk menggunakan pengguna dan katalaluan yang sama untuk WordPress, bbPress dan MediaWiki untuk menbina laman ala-ala “portal”.

Saya andaikan anda telah memasang XAMPP for Linux pada /opt

Langkah-langkahnya seperti berikut:

Muaturun wordpress terbaru http://ms.wordpress.org/

Muaturun bbpress dari http://bbpress.org/download/

Muaturun mediawiki dari http://www.mediawiki.org/wiki/Download

Muaturun AuthWordpress.php dari http://insites.ingenesis.net/wp-content/uploads/2008/08/authwordpressphp.zip

Mulakan servis LAMPP
sudo /opt/lampp/lampp start

Buka http://localhost/phpmyadmin pada pelungsur web kegemaran anda

Buat satu database bernama wpress1

Pasang WordPress versi Bahasa Melayu. Anda boleh gantikan dengan versi Bahasa Inggeris jika mahu
cd /opt/lampp/htdocs/
sudo unzip /home/umarzuki/Downloads/wordpress-2.9.1-ms_MY.zip
mv wordpress/ wportal
sudo cp wportal/wp-config-sample.php wportal/wp-config.php

Ubah baris-baris berikut dalam wp-config.php sesuai dengan maklumat database wpress1 tadi

[code lang=”php”]/** Nama pangkalan data untuk WordPress */
define(‘DB_NAME’, ‘wpress1’);

/** Nama pengguna pangkalan data MySQL */
define(‘DB_USER’, ‘root’);

/** Kata laluan pangkalan data MySQL */
define(‘DB_PASSWORD’, ”);[/code]

Untuk menambahkan keselamatan laman WordPress anda:
Pergi ke https://api.wordpress.org/secret-key/1.1/

Edit wp-config.php untuk baris-baris berikut:

[code lang=”php”]define(‘AUTH_KEY’, ‘letakkan kata-kata unik di sini’);
define(‘SECURE_AUTH_KEY’, ‘letakkan kata-kata unik di sini’);
define(‘LOGGED_IN_KEY’, ‘letakkan kata-kata unik di sini’);
define(‘NONCE_KEY’, ‘letakkan kata-kata unik di sini’);[/code]

Tukar “letakkan kata-kata unik di sini” sama dengan nilai dari laman https://api.wordpress.org/secret-key/1.1/

Pergi ke http://localhost/wportal

Isikan maklumat untuk laman anda

Klik “Pasang WordPress”

Catatkan katalaluan untuk proses selanjutnya

Klik log masuk (disini anda perlukan katalaluan tersebut)

Tukar katalaluan dengan klik pada “Ya, bawa saya ke laman profil saya”

Pasang bbPress
sudo tar xvf /home/umarzuki/Downloads/bbpress-1.0.2.tar.gz
sudo mv bbpress/ forum

Pergi ke http://localhost/forum

Klik “Go to step 1”

Konfigurasi seperti berikut. Yang tidak saya senaraikan, sila abaikan.

Database name = wpress1
Database user = root

Klik pada “Save database configuration file”

Kalau anda dapat mesej berikut:

Your settings could not be saved to a configuration file. You will need to save the text shown below into a file named bb-config.php in the root directory of your bbPress installation before you can continue.

Salin konfigurasi berikut (yang dihasilkan dari proses sebelum ini) pada fail bb-config.php dalam folder forum

[code lang=”php”][/code]

Klik kotak “check for configuration file”

Sepatutnya anda dapat mesej berikut:

A valid configuration file was found at bb-config.php
You may continue to the next step.

Klik “Go to step 2”

Klik kotak “Add integration settings” dan “Add cookie integration settings”

Isikan maklumat konfigurasi seperti berikut

WordPress address (URL) = http://localhost/wportal
Blog address (URL) = http://localhost/wportal
WordPress “auth” cookie key = nilai AUTH_KEY pada BB_AUTH_KEY dalam wportal/wp-config.php
WordPress “auth” cookie salt = nilai auth_salt pada http://localhost/wportal/wp-admin/options.php
WordPress “secure auth” cookie key = nilai SECURE_AUTH_KEY dalam wportal/wp-config.php
WordPress “logged in” cookie key = nilai LOGGED_IN_KEY dalam dalam wportal/wp-config.php
WordPress “logged in” cookie salt = nilai logged_in_salt pada http://localhost/wportal/wp-admin/options.php

Klik kotak “Add user database integration settings”

Klik “Save wordpress integration settings”

Klik “Go to step 3”

Isikan maklumat forum. Untuk “Key Master” Username, pilih Admin

Klik “Save site settings”

klik “Complete the installation”

Jika anda dapat mesej seperti berikut bila anda klik pada kotak “Show installation messages”

>>> WordPress cookie keys not set.
>>>>>> Your “bb-config.php” file was not writable.
>>>>>> You will need to manually re-define “BB_AUTH_KEY”, “BB_SECURE_AUTH_KEY” and “BB_LOGGED_IN_KEY” in your “bb-config.php” file.

Masukkan maklumat yang sama daripada wportal/wp-config.php untuk nilai BB_AUTH_KEY, BB_SECURE_AUTH_KEY, BB_LOGGED_IN_KEY, dan BB_NONCE_KEY (tanpa prefix BB_ pada wp-config.php)

Untuk membolehkan seseorang pengguna WordPress membalas atau memulakan topik, pengurus mestilah memberikan peranan yang sesuai seperti editor/pengarang dan begitu jugalah bagi pengguna bbPress pada WordPress. Buat masa ini, tiada integrasi automatik untuk membolehkan kedua-dua pengguna aplikasi untuk mengenal peranan pengguna dari aplikasi berbeza.

Pasang MediaWiki
sudo tar xvf /home/umarzuki/Downloads/mediawiki-1.15.1.tar.gz
sudo mv mediawiki-1.15.1/ wiki
cd wiki/
chmod a+w config/

Pergi ke http://localhost/wiki/config/index.php

Isikan maklumat wiki

Database name: wpress1
DB username: root
Database table prefix: wp_

Memandangkan mediawiki bertegas mahukan kata laluan yang tiada untuk pengguna mysql root, kita tiada pilihan melainkan untuk menetapkannya
cd ../../bin/
./mysqladmin -u root password passw0rd

*jangan lupa tetapkan semula kata laluan dalam wportal/wp-config.php dan forum/bb-config.php

Klik “Install MediaWiki”

Kemaskan keselamatan wiki anda
sudo mv config/LocalSettings.php .
sudo rm -rf config

Pasang AuthWordpress.php
sudo unzip /home/umarzuki/Downloads/authwordpressphp.zip -d extensions/
sudo rm -rf extensions/__MACOSX/

Tambah dalam LocalSettings.php baris-baris berikut:
[code lang=”php”]## Added for WordPress login support
require_once( ‘extensions/AuthWordpress.php’ );
$wgAuth = new AuthWordpress();
$wgAuth->setAuthWordpressTablePrefix(‘wp_’); // Should match the DB prefix in wp-config.php
$wgAuth->setAuthWordpressDBServer (‘localhost’); // wordpress host (eg. localhost)
$wgAuth->setAuthWordpressDBName(‘wpress1’); // wordpress database
$wgAuth->setAuthWordpressUser(‘root’); // wordpress db username
$wgAuth->setAuthWordpressPassword(‘passw0rd’); // wordpress db password[/code]

Dalam wiki/extensions, tukar baris berikut dalam AuthWordpress.php dari

require_once(‘../wp-includes/class-phpass.php’);

ke

require_once(‘/opt/lampp/htdocs/wportal/wp-includes/class-phpass.php’);

Siap. Sekarang anda boleh menggunakan pengguna yang sama untuk WordPress untuk fungsi blog, bbPress untuk fungsi forum ringkas dan MediaWiki untuk fungsi wiki.