Chủ Nhật, 2 tháng 10, 2016

Tạo Hosting miễn phí trên OpenShift Online

CHÚ Ý: CÁCH LÀM NÀY DÀNH CHO DOMAIN HTTP://WWW.DOMAIN.ABC
NẾU LÀM HTTP://DOMAIN.COM THÌ CHÚ Ý ĐOẠN CLOUDFLARE


Tất cả sẽ hoàn toàn miễn phí để bạn tha hồ vọc vạch với OpenShift Online by Redhat

OpenShift Online là gì?

OpenShift Online thực chất không phải là một hosting thông thường mà ta vẫn thường hay nhắc mà đó chính là một ứng dụng tạo ra một nền tảng hosting công cộng ứng dụng công nghệ máy chủ điện toán đám mây để người dùng có thể sử dụng, tạo ra một hosting cho riêng mình và có thể tùy chỉnh các phần mềm được cài đặt lên trên nó. Nó có thể hỗ trợ Java, Python, Perl, Ruby và tất nhiên là có PHP và nó mới bổ sung PhpMyAdmin vào, nghĩa là bạn có thể chạy bất cứ mã nguồn PHP & MySQL nào trong đó có WordPress.

Nghe thì có vẻ phức tạp nhưng thực chất mọi thao tác trong OpenShift đã được đơn giản hóa đi rất nhiều bằng việc bạn có thể tự tạo ra ứng dụng riêng được hỗ trợ từ các package, các package này nghĩa là các gói phần mềm tùy theo từng mục đích sử dụng và nó cũng đã tối ưu để sử dụng, trong đó có package dành cho WordPress.
Nguồn: http://thachpham.com/hosting-domain/cai-wordpress-len-openshift.html

Ưu điểm:



Nhược điểm:



Thích hợp:



A. TẠO WEBSITE ĐẦU TIÊN
Trước khi tạo thì bạn cần tạo 1 tài khoản. Việc đăng ký cũng rất đơn giản, bạn chỉ cần nhập email, mật khẩu, captcha và bấm Submit

[​IMG]

Sau đó vào Email đăng ký để kích hoạt tài khoản.
Sau khi đăng nhập bạn bấm Create your first application now để tạo website

[​IMG]

Mục đích chúng ta tạo website với mã nguồn Wordpress nên có thể chọn Wordpress 4 (cài đặt tự động) hoặc PHP 5.4 để tự cài đặt.

[​IMG]

Lưu ý 1: Với OpenShift Free sẽ có 2 lựa chọn để bạn tạo website



Với phương án 1 bạn có thể cài tự động các ứng dụng: wordpress 4, MySQL, Phpmyadmin từ OpenShift. Nhưng với Phương án 2 thì bạn bắt buộc phải cài Phpmyadmin thủ công.
Vì chúng ta cần 1 website với 1 dung lượng lớn hơn, traffic có thể tăng đột biến nên chọn phương án 2.

Lưu ý 2:



Để cài đặt mã nguồn Wordpress hoặc mã nguồn nào sử dụng PHP bạn cần chọn cài đặt PHP 5.4
Tiếp theo đặt tên domain theo dạng tênDatabase-têndomain.rhcloud.com

[​IMG]

Kéo xuống dưới chọn PA2: Scale with web traffic, chọn tiếp No Preference sau đó Nhấn Create Application

[​IMG]

Sau khi tạo xong nhấn vào Not now, continue

[​IMG]

Bây giờ bạn đã có thể truy cập vào domain tạo từ Openshift. Việc tiếp theo là cài MySQL và Phpmyadmin. Như đã nói ở trên bạn chỉ có thể cài MySQL từ Openshift còn Phpmyadmin sẽ cài thủ công sau đó.

[​IMG]

Bạn nhấn vào Add MySQL 5.5 để bắt đầu cài đặt

[​IMG]

Nhấn Add Cartridge để bắt đầu.
Sau khi cài xong sẽ có thông tin đăng nhập với User/pass đăng nhập mySQL và tên Database. Bạn lưu lại để làm ở các bước tiếp theo.

[​IMG]


B. CÀI ĐẶT FTP, PHPMYADMIN:

Để cài đặt Phpmyadmin thì bắt buộc bạn phải sử dụng trình FTP để upload mã nguồn lên server.
Công cụ cần có:


Download, copy file Putty.exe vào:
C:\Program Files\PuTTY (windows 32bit)
C:\Program Files (x86)\PuTTY (Windows 64bit)

Trước tiên chạy Putty GEN.exe để lấy key ssh. Bạn bấm Generate để bắt đầu

[​IMG]

Rê chuột liên tục vào vùng trống để quá trình tạo key nhanh hơn.

[​IMG]

Copy đoạn Key lại sau đó nhấn Save Private key

[​IMG]

Vào Setting dán Key vừa tạo vào. Bấm Save.

[​IMG]

Mở WinSCP lên, cửa sổ đăng nhập hiện ra chọn New Site

[​IMG]

Copy domain vào Host name
User name chính là dãy số này:

[​IMG]

Bấm Advanced
Chọn Authentication và mở file Key vừa lưu lúc nãy

[​IMG]

Bấm OK > Save và bắt đầu Login.Thư mục gốc của website sẽ ở địa chỉ này:



[​IMG]

Upload file zip phpMyAdmin-4.4.15.2-english.zip lên, đổi tên sao cho dễ thao tác (ví dụ: php.zip)
Vào Commands > Open in PuTTY

[​IMG]

Gõ vào dòng lệnh:



Với địa chỉ thư mục gốc website của bạn

[​IMG]

Sau đó gõ tiếp lệnh để unzip file phpmyadmin hoặc file mã nguồn wordpress (chỉ áp dụng với file nén dạng *.zip nhé)



[​IMG]

Sau khi unzip xong bạn có thể đổi tên tùy thích (ví dụ mình chọn xxx)

[​IMG]

Mở thư mục Phpmyadmin lên kéo xuống dưới tìm file config.sample.inc.php đổi tên thành config.inc.php, mở file lên ở chế độ Edit

[​IMG]

Vào đường dẫn: /var/lib/openshift/[yourID]/.env/mysql/
Mở file OPENSHIFT_MYSQL_DB_URL

[​IMG]

[​IMG]

Sẽ có nội dung sau:

PHP:
mysql://adminsYSn9dT:Tsm9eezpfLrJ@56a5d83a7628e193770000fc-tremocoivo.rhcloud.com:50541/
Mở qua file Config.inc.php
Thêm 2 đoạn này vào sau dòng 27: $i++;

PHP:
$cfg['Servers'][$i]['port']  = '50541'// MySQL port - leave blank for default port$cfg['Servers'][$i]['socket']  = getenv('OPENSHIFT_MYSQL_DB_SOCKET'); // Path to the socket - leave blank for default socket
Sửa dòng sau:

PHP:
$cfg['Servers'][$i]['host'] = '56a5d83a7628e193770000fc-tremocoivo.rhcloud.com';
Với Port, Host copy như trong hình, lấy được từ file OPENSHIFT_MYSQL_DB_URL

[​IMG]

Kéo xuống sửa nội dung 2 dòng này:

PHP:
$cfg['UploadDir'] = getenv('OPENSHIFT_TMP_DIR');$cfg['SaveDir']  = getenv('OPENSHIFT_TMP_DIR');
Bấm Save để lưu lại lên Host.

Vào thử đường dẫn xem thế nào. Nếu hiện ra trang đăng nhập thì nhập User/pass của mySQL vào.

[​IMG]

Nếu cấu hình chính xác sẽ đăng nhập thành công và vào giao diện quản trị của phpmyadmin

[​IMG]

Tiếp theo là phải bảo mật thư mục phpmyadmin bằng cách Tạo mật khẩu thư mục và CHMOD.
Chúng ta cần CHMOD về 600 cho các file config.inc.php.htaccess
Click chuột phải vào file cần thay đổi permissions > chọn Properties sau đó sửa mục Octal về 0600

[​IMG]

Để tạo mật khẩu bảo vệ thư mục bạn cần cấu hình file .htaccess và thêm file .htpasswd
Để tạo file đó bạn cần vào trang sau:

Tại mục Enter Usernames bạn điền tên User để đăng nhập
Tại mục Enter Corresponding Passwords bạn nhập mật khẩu (chỉ chấp nhận chữ và số)

[​IMG]

Bạn có thể nhập nhiều user/pass bằng cách mỗi user/pass nằm trên 1 dòng.
Tại mục số 2 bạn dán đường dẫn đến thư mục chứa file .htpasswd (đường dẫn tuyệt đối copy từ WinSCP)
Sau đó nhấn Submit sẽ được chuyển đến trang kết quả.
[​IMG]

Trong WinSCP vào thư mục phpmyadmin tạo 2 file có tên .htaccess.htpasswd
Copy lần lượt 2 tham số vào các file tương ứng mà trang web đưa ra.
Để tăng cường bảo mật file .htaccess bạn copy như đoạn dưới



File .htpasswd không cần thêm gì cả.
Nếu chính xác thì thư mục phpmyadmin sẽ hiện popup yêu cầu nhập mật khẩu. Bạn thử nhập user/pass để kiểm tra.

[​IMG]

Vậy là xong phần cấu hình hosting. Bây giờ bạn chỉ uploaf source wordpress lên và cài đặt và các bạn lưu ý thông tin database chính là thông tin từ file OPENSHIFT_MYSQL_DB_URL ở trên.



Bạn điền như sau:



C. ADD DOMAIN RIÊNG:

Với domain mặc định của OpenShift có vẻ không chuyên nghiệp lắm và việc add domain riêng cho OpenShift cũng có chút khó khăn so với các hosting chuyên nghiệp khác. Với việc chỉ chấp nhận đường dẫn domain dạng:

mà không hỗ trợ nake domain dạng têndomain.com do đó bạn phải cần đến dịch vụ của bên thứ 3 đó là Cloudflare.com (search gg để biết thêm thông tin). Hoặc nếu bạn không tin tưởng thì có thể tự cấu hình thông qua trang quản lý domain đã mua.
Đây là 1 dịch vụ DNS trung gian với nhiều ưu điểm nhanh, mạnh, bảo mật. Và quan trọng là giải quyết được vấn để trỏ domain của OpenShift.
Có nghĩa là khi người dùng gõ tên website của bạn kiểu têndomain.xxx sẽ tự động chuyển về www.têndomain.xxx Nếu bạn không cấu hình thì mặc định báo lỗi không tìm thấy website này.

Để sử dụng dịch vụ bạn truy cập vào địa chỉ: https://www.cloudflare.com/
Việc đăng ký cũng rất đơn giản. Bạn đăng nhập xong bấm vào Add Site và thêm địa chỉ domain mình đã mua vào và nhấn Begin Scan

[​IMG]

Mình thấy các domain mua ở dịch vụ như Godaddy, namecheap khi add vào OpenShift rất mượt mà, chỉ có Bigrock là không thể chạy được.
Sau khi quét xong bạn bấm vào Continue Setup sẽ ra 1 bảng liệt kê các Records hiện có trên domain của bạn.

[​IMG]

Bạn tiếp tục bấm Continue, chọn Free Website ở Select a CloudFlare Plan và bấm Continue

[​IMG]

Trang tiếp theo yêu cầu bạn đổi thông số Nameserver trên trang quản lý domain bạn mua bằng nameserver của Cloudflare. Sau khi bạn đổi thành công thì bấm Continue để hoàn thành.

[​IMG]

Giao diện của Cloudflare có rất nhiều mục có thể chỉnh sửa tuy nhiên mình chỉ cần quan tâm tới 2 mục DNSPage Rules còn lại bạn tự tìm hiểu nhé.[​IMG]
Trước tiên bạn vào DNS và thêm 2 Records như sau

[​IMG]

Sau đó bạn qua Tab Page Rules và tạo 1 rule theo hình
[​IMG]

Vậy là xong cấu hình DNS, còn 1 bước cuối cùng là thêm Domain vào OpenShift.
Vào OpenShift ngay tại domain hiện tại nhấn Change

[​IMG]

Và bạn add lần lượt domain của bạn với www và không có www

[​IMG]

Vậy là xong, bây giờ bạn có thể tận hưởng thành quả của mình rồi nhé.Chúc các bạn thành công.koko-3

Thứ Bảy, 1 tháng 10, 2016

Loại bỏ chữ “/category/” trong đường link của WordPress

Nhằm chống lại sự dài dòng =)) của đường link category trong WordPress, mà mặc định nó là “home/category/name/” thì tôi đang dùng một custom code để làm việc này, tuy nhiên các bạn cũng hoàn toàn có thể làm được điều tương tự với một plugin của WordPress. Khoan hãy nhắc tới plugin đó, giờ ta bàn lý do tại sao chúng ta nên xóa nó:
Xóa Category Base ra khỏi đường dẫn của WordPress
Xóa Category Base ra khỏi đường dẫn của WordPress
Trước hết, dưới góc độ của một người làm seo như tôi thì đường link càng dài tôi càng ghét, đúng hơn là càng sâu thì càng không có lợi, vì Google nó sợ các đường link bẫy con bọ của nó, ví dụ như các đường link sâu /home/a/b/c/d/Random/ thì nó vừa mất thời gian lại tốn công sức, vì thế càng sâu thì nó càng thận trọng, nên càng gần đầu và càng nông càng tốt.
Lý do thứ hai là bạn ghét nó, thế thôi ! Nhiều khi cảm thấy thừa thãi !

Cài đặt

Trên WordPress Plugin Directory có khá nhiều plugin có thể trợ giúp bạn trong việc xóa Category Base trong đường dẫn, các bạn có thể tham khảo:
1. Remove Category Base: https://wordpress.org/plugins/remove-category-url/
2. WP no category Base: https://wordpress.org/plugins/wp-no-category-base/
Cả hai cái đều làm việc dưới một nguyên tắc là xóa đoạn /category/ trong rewrite tag, làm cho WordPress hiểu đường dẫn category chỉ có /category-name/ thôi.

Sử dụng plugin Yoast SEO

Plugin Yoast SEO rất thân thuộc với chúng ta, gần đây đã cung cấp chức năng này trong plugin, các bạn có thể kích hoạt nó lên bằng cách:
Truy cập SEO > Advance > Permalinks và bật nút xóa chữ Category đi:
Bật xóa chữ Category trong đường link
Bật xóa chữ Category trong đường link
* Lưu ý là để điều chỉnh lại đường dẫn không có category base trong Menu hoặc trong toàn bộ link trên trang, ta dùng hàm hack sau cho vào trong file functions.php nhé:
/* xóa đường link của category */

function _nice_category_link($link) {
    return str_replace('/category/', '/' , $link);
}

add_filter('category_link', '_nice_category_link');
Và bây giờ thử truy cập đường link của Category và thưởng thức thành quả mới nào !

Chúc các bạn thành công !

Thứ Ba, 20 tháng 9, 2016

Short code tự thêm bài liên quan trong giữa bài viết

Ở các trang báo bạn có thể thấy họ thường có chức năng hiển thị các bài viết liên quan đến bài đó ở ngay đầu hoặc giữa bài, đây là câu hỏi mà mình đã nhận được từ nhiều bạn có nhu cầu làm chức năng giống như vậy.
Bài liên quan ngay giữa nội dung như báo điện tử
Bài liên quan ngay giữa nội dung như báo điện tử
Về vấn đề này bạn hoàn toàn dư sức làm bằng thủ công vì nó sẽ chính xác hơn, nhưng nếu bạn cần nó làm tự động với độ chính xác thấp hơn thì có thể tham khảo bài này.

I. Cách thức

Để làm được chức năng này, chúng ta sẽ cần một code với 3 chức năng chính như sau:
  1. Hiển thị bài viết liên quan (liên quan theo taxonomy như tag, category, custom taxonomy).
  2. Code xác định được vị trí cần chèn. Cụ thể là chúng ta sẽ đếm số dòng văn bản trong nội dung dựa theo thẻ <p> trong mã HTML.
  3. Và cuối cùng là chúng ta sẽ chèn code 1 vào phần 2.
Về vấn đề số 1, thì bạn không cần code làm chi cho nó mệt mà mình khuyến khích bạn sử dụng plugin Related Posts by Taxonomy vì nó có hỗ trợ shortcode và nhiều tùy chọn khác trong shortcode để bạn có thể ứng dụng được nhiều trường hợp hơn. Do đó, hãy cài plugin này vào trước khi làm.
Do đó về phần viết code, ta chỉ viết code đếm số dòng và code chèn shortcode của plugin bài liên quan kia vào thôi.

II. Code đếm số dòng

Sở dĩ chúng ta cần đếm số dòng trong văn bản là vì ta sẽ dựa vào đó để gọi code chèn shortcode vào vị trí thích hợp. Trong bộ soạn thảo mặc định của WordPress, mỗi khi bạn xuống hàng nó sẽ tự định nghĩa hàng đó là một cặp thẻ <p>. Vì vậy ở đây chúng ta sẽ có code để đếm hệ thống hiểu rằng chúng ta đang nhắm tới các thẻ <p> mà đếm.
Chèn code sau vào file functions.php mà không cần sửa gì.
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
// Code đếm số dòng trong văn bản
function count_paragraph( $insertion, $paragraph_id, $content ) {
        $closing_p = '</p>';
        $paragraphs = explode( $closing_p, $content );
        foreach ($paragraphs as $index => $paragraph) {
                if ( trim( $paragraph ) ) {
                        $paragraphs[$index] .= $closing_p;
                }
                if ( $paragraph_id == $index + 1 ) {
                        $paragraphs[$index] .= $insertion;
                }
        }
        return implode( '', $paragraphs );
}
Bây giờ chúng ta đã có hàm count_paragraph() làm nhiệm vụ xác định được các thẻ <p> trong văn bản với cấu trúc sử dụng như sau:
01
count_paragraph($nội-dung-cần-chèn, $số-dòng-cần-chèn-vào, $content);
Trong đó, $content chính là nội dung của bài viết để chúng ta sử dụng tính năng add_filter.

III. Chèn bài liên quan vào nội dung

Bây giờ việc cuối cùng của chúng ta là sử dụng cái hàm count_paragraph() đã tạo ở trên và kết hợp với filter trong WordPress để chèn bài liên quan vào. Chèn code sau vào file functions.php:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
//Chèn bài liên quan vào giữa nội dung
add_filter( 'the_content', 'prefix_insert_post_ads' );
function prefix_insert_post_ads( $content ) {
        $related_posts= do_shortcode('[related_posts_by_tax title=""]');
        if ( is_single() ) {
                return count_paragraph( $related_posts, 1, $content );
        }
        return $content;
}
Trong code trên, ta có biến $related_posts sẽ chứa hàm thực thi shortcode của plugin mà bạn đã cài. Trong plugin này có rất nhiều tham số mà bạn có thể tham khảo tại đây.
Kế tiếp là bạn để ý đoạn sau:
01
02
03
if ( is_single() ) {
        return count_paragraph( $related_posts, 1, $content );
}
Đoạn này ta có hàm is_single() để kiểm tra xem trang đó có phải là trang single hay không để tránh tình trạng nó hiển thị ra ngoài trang chủ làm mất tinh tế.
Kế tiếp là đoạn return count_paragraph( $related_posts, 1, $content ), bạn thấy số 1 chứ? Số 1 ở đây nghĩa là nó sẽ tự chèn shortcode bài liên quan vào sau dòng số 1 trong văn bản. Bạn có thể thay số một thành số khác tùy thích. Số càng lớn thì bài liên quan sẽ hiển thị càng sâu xuống dưới, giá trị nhỏ nhất là 1.
Ok, bây giờ toàn bộ code ta có trong bài này là như sau: (chèn toàn bộ vào file functions.php)
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Code đếm số dòng trong văn bản
function count_paragraph( $insertion, $paragraph_id, $content ) {
        $closing_p = '</p>';
        $paragraphs = explode( $closing_p, $content );
        foreach ($paragraphs as $index => $paragraph) {
                if ( trim( $paragraph ) ) {
                        $paragraphs[$index] .= $closing_p;
                }
                if ( $paragraph_id == $index + 1 ) {
                        $paragraphs[$index] .= $insertion;
                }
        }
        return implode( '', $paragraphs );
}
//Chèn bài liên quan vào giữa nội dung
add_filter( 'the_content', 'prefix_insert_post_ads' );
function prefix_insert_post_ads( $content ) {
        $related_posts= do_shortcode('[related_posts_by_tax title=""]');
        if ( is_single() ) {
                return count_paragraph( $related_posts, 1, $content );
        }
        return $content;
}
Kết quả ta có:
Bài liên quan ngay giữa nội dung như báo điện tử
Bài liên quan ngay giữa nội dung như báo điện tử
Nếu bạn cần cho nó đẹp hoặc muốn viết CSS riêng cho nó thì thay:
01
$related_posts= do_shortcode('[related_posts_by_tax title=""]');
Thành
01
$related_posts= "<div class='meta-related'>".do_shortcode('[related_posts_by_tax title=""]')."</div>";
Sau đó viết CSS cho class .meta-related mà thôi, ví dụ chèn đoạn sau vào file style.css
01
02
03
04
05
meta-related {
  font-size: 13px;
  line-height: 1.4em;
  font-weight: bold;
}
Xong rồi đấy. Theme nào cũng làm như nhau nhé.

Chủ Nhật, 18 tháng 9, 2016

Lỗi "What do I do when I receive an Internal Server Error?" - Wordpress

Thông báo lỗi web dưới dạng
"Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, support@supportwebsite.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

Apache/1.3.33 Server at mydomain.com Port 80"


Cause

This error can be caused by a variety of issues but is most likely caused by a corrupt .htaccess file. Check to see if there is an .htaccess file in the directory where the error is being generated or any directory above in the tree. If so, temporarily rename the .htaccess file and refresh the page. If the error does not reappear, the .htaccess file is the issue. Repair the file or leave it disabled.
If you encounter further issues with the renamed .htaccess file, revert its name, and try restoring it from a backup.
Most of the time .htaccess issues are caused by trying to overwrite PHP settings, being uploaded in binary format or permissions issues.

Resolution

Be sure to upload .htaccess files in ASCII mode
Set the permissions to 644, which makes it usable by the server, but prevents it from being read from a browser.
If you are trying to make changes to PHP settings, be sure to make changes to your PHP initialization file.

Thứ Năm, 15 tháng 9, 2016

File wp-config.php

<?php
/**
 * The base configuration for WordPress
 *
 * The wp-config.php creation script uses this file during the
 * installation. You don't have to use the web site, you can
 * copy this file to "wp-config.php" and fill in the values.
 *
 * This file contains the following configurations:
 *
 * * MySQL settings
 * * Secret keys
 * * Database table prefix
 * * ABSPATH
 *
 * @link https://codex.wordpress.org/Editing_wp-config.php
 *
 * @package WordPress
 */

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'ten database o day');

/** MySQL database username */
define('DB_USER', 'username o day ');

/** MySQL database password */
define('DB_PASSWORD', 'dien pass vao day');

/** MySQL hostname */
define('DB_HOST', 'localhost');

/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8');

/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', '');


define( 'WP_MEMORY_LIMIT', '256M' );

/**#@+
 * Authentication Unique Keys and Salts.
 *
 * Change these to different unique phrases!
 * You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}
 * You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again.
 *
 * @since 2.6.0
 */
define('AUTH_KEY',         'put your unique phrase here');
define('SECURE_AUTH_KEY',  'put your unique phrase here');
define('LOGGED_IN_KEY',    'put your unique phrase here');
define('NONCE_KEY',        'put your unique phrase here');
define('AUTH_SALT',        'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT',   'put your unique phrase here');
define('NONCE_SALT',       'put your unique phrase here');

/**#@-*/

/**
 * WordPress Database Table prefix.
 *
 * You can have multiple installations in one database if you give each
 * a unique prefix. Only numbers, letters, and underscores please!
 */
$table_prefix  = 'wp_';

/**
 * For developers: WordPress debugging mode.
 *
 * Change this to true to enable the display of notices during development.
 * It is strongly recommended that plugin and theme developers use WP_DEBUG
 * in their development environments.
 *
 * For information on other constants that can be used for debugging,
 * visit the Codex.
 *
 * @link https://codex.wordpress.org/Debugging_in_WordPress
 */
define('WP_DEBUG', false);

/* That's all, stop editing! Happy blogging. */

/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
define('ABSPATH', dirname(__FILE__) . '/');

/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');

Thứ Hai, 12 tháng 9, 2016

file .htaccess

php_value max_execution_time 3000

php_value max_input_vars 3000

<IfModule mod_headers.c>
  <FilesMatch "\.(ttf|ttc|otf|eot|woff|woff2|font.css|css|js)$">
    Header set Access-Control-Allow-Origin "*"
  </FilesMatch>
</IfModule>

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

Thứ Ba, 8 tháng 3, 2016

share texture

share texture
hướng dẩn sử dụng : 
https://www.youtube.com/watch?v=4ztDjJu0B2w
link dowload :
https://www.fshare.vn/file/EX819UAKOFSI
https://www.fshare.vn/file/6IPTON1TR3TL
========================================
link 1 số tài nguyên khác 
link full tổng hợp 1 : 
https://www.fshare.vn/folder/CUY1W9BG4VVH 
link full tổng hợp 2 : 
https://www.fshare.vn/folder/VBN2ZKM6MFX5
có gì liên hệ face của mình
https://www.facebook.com/hoainiem.0905180795

Thứ Tư, 2 tháng 3, 2016

Fix lỗi "bump_request_timeout()" của plugin Wordpress Importer

Lỗi hiển thị như này:

Declaration of WP_Import::bump_request_timeout() should be compatible with WP_Importer::bump_request_timeout($val) in xxxxx\wp-content\plugins\wordpress-importer\wordpress-importer.php on line 38



Cách sửa:

- Mở file "wordpress-importer.php"
Tìm đến dòng 1110:
+ Sửa:    
function bump_request_timeout() {
+ Thành:
function bump_request_timeout( $val ) {

- Mở file "parsers.php"

Tìm đến dòng 404:
+ Sửa:    
function WXR_Parser_Regex() {
        $this->__construct();
}

function __construct() {
        $this->has_gzip = is_callable( 'gzopen' );
}

+ Thành:
function __construct() {
        $this->has_gzip = is_callable( 'gzopen' );
}

function WXR_Parser_Regex() {
        $this->__construct();
}

Xem thêm ảnh:

Chủ Nhật, 28 tháng 2, 2016

Tut của Đỗ Kim Nhật


FB: https://www.facebook.com/dokim.nhat
Mình sẽ hạn chế share presets cho các bạn, thay vào đó là những video về Creative Technique như thế này, nó sẽ tốt cho các bạn hơn là "One click" grin emoticon Enjoy!
- Link download : https://goo.gl/ybJVbb
- Pass : filmmaking.com.vn
- Một video về Image Editing khác đã up :https://www.facebook.com/groups/blend.retouch/permalink/471155099750570/
===========================================
- Fundy Designer with Album Builder 6 v1.9.39 (Win) - V1.10.0 (MAC) :https://www.facebook.com/groups/blend.retouch/470787659787314/
- Design Effect & Element for Design Vol.1 - Vol.4 :https://www.facebook.com/groups/blend.retouch/470383089827771/
- Video hướng dẫn Photoshop] A Frozen Tale by Alexia Sinclair :https://www.facebook.com/groups/blend.retouch/470060943193319
- [Advanced Portrait Retouching] PortraitPro 15.4.1.0 Standard Edition (WIN Only) Phần mềm retouch chuyên nghiệp :https://www.facebook.com/groups/blend.retouch/467398426792904/
- [Video Retouch - EN Only] High End Skin Retouching - Start to Finish by KelbyOne :https://www.facebook.com/groups/blend.retouch/466137400252340/
- [Presets Lightroom & Action Photoshop] LOOK LIKE A FILE TONE] :https://www.facebook.com/groups/blend.retouch/464839030382177/
- Photoshop Action] SkaiPhotography - L'artiste Signature Photoshop Actions (Color grade - burning light - Skin enhance ... ) :https://www.facebook.com/groups/blend.retouch/462209207311826/
- Hiệu ứng pháo hoa dạng "long exposure" :https://www.facebook.com/groups/blend.retouch/462033637329383
- [Video Hướng Dẫn Đánh khối] Beauty of Dodge & Burn in Photoshop :https://www.facebook.com/groups/blend.retouch/460457220820358/
- [Video TUT] Shutterevolve - The Art of Digital Blending with Jimmy McIntyre "https://www.facebook.com/groups/blend.retouch/457130404486373/
- Desk Calendar 2016 + BONUS (Lịch đề bàn và treo tường năm 2016) :https://www.facebook.com/groups/blend.retouch/456823671183713/
- [Share Retouch Panel] Magic Retouch Pro Version 2.9 :https://www.facebook.com/groups/blend.retouch/456409097891837/
- The Skies Part 1 / Part 2 / Part 3 / Video hướng dẫn thay nền trời :https://www.facebook.com/groups/blend.retouch/449917168541030/
- Video hướng dẫn Retouch (EN - Full 7 Vol) - Mastering Retouching by Nick Saglimbeni :https://www.facebook.com/groups/blend.retouch/454503124749101/
- PHLearn Collection Update 2015 (Video hướng dẫn của PHLearn cho Photoshop) :https://www.facebook.com/groups/blend.retouch/453495724849841/
- Video hướng dẫn về "Classic Portrait" :https://www.facebook.com/groups/blend.retouch/450024378530309/
- SLR Lounge: Natural Light Couples Photography Workshop (Hướng dẫn chụp Couples và chỉnh sửa trên Lightrrom) :https://www.facebook.com/groups/blend.retouch/449798888552858/
- Set a Light 3D Studio 1.00V73 for Win / 1.00V74 for Mac (Mô phòng setup ánh sáng đèn cho studio) :https://www.facebook.com/groups/blend.retouch/448250815374332
- Breed Master Class - Advanced Fashion Photography Lighting (Hướng dẫn setup đèn cho studio và location theo dạng trực quan 3D) :https://www.facebook.com/groups/blend.retouch/448211672044913/
- Learn to Edit RAW Images to look like Film in Lightroom CC (Hướng dẫn sử dụng VSCO film pack) :https://www.facebook.com/groups/blend.retouch/447722242093856
- Digital Film Actions (Julia Trotti) Collection (Màu film) :https://www.facebook.com/groups/blend.retouch/446652432200837
- Work Of Heart Collection [PS Action set] => Tone Matte :https://www.facebook.com/groups/blend.retouch/446380388894708/
- Morris Fayman & Full Video hướng dẫn (full shop) (Preset kèm video hướng dẫn làm màu) :https://www.facebook.com/groups/blend.retouch/445680735631340/
- Damien Lovegrove Video Tutorial Collection (hướng dẫn nhiếp ảnh) :https://www.facebook.com/groups/blend.retouch/444608789071868
- Winter Wonderland - Collection for Christmas (bộ sưu tập action, overlays, brush cho mùa đông) :https://www.facebook.com/groups/blend.retouch/444232335776180
- BeArt - Photoshop Actions & Lightroom Presets Collection :https://www.facebook.com/groups/blend.retouch/441560479376699/
- BUNDLE Library Overlays PRO (hiệu ứng hình ảnh) :https://www.facebook.com/groups/blend.retouch/436970109835736
- Vintage Floral Wedding Photo Book & 17 Photo Frames Bundle 06 :https://www.facebook.com/groups/blend.retouch/440583792807701/


Present Tone nóng