Just look at pictures, but I see this game quite beautiful graphics. You can also refer to one of my game also supports the java: choi game bau cua, game danh bai truc tuyen...
Thứ Hai, 15 tháng 9, 2014
Thứ Sáu, 25 tháng 7, 2014
Play bus parking games !
Are you bored of playing racing game, where the speed is all that counts. Than try this new parking game, Skill bus parking games. You`ll see how tough is a day for a truck driver. First you`ll have to park your big rig on the indicated spot, then you`ll have to load it using a forklift and after you`ll have to to destination. Try to pass all the challenges and you`ll love to drive heavy trucks from now on. Be aware Skill Parking your bus is only for experts.
More: http://busparkinggames.org/
Become the best by trying your hand at all of our parking games and find that parking isn't as easy as you may think it is. Who would have thought they would be so much fun?!
This is the best site of funny games: http://funnygames28.com/
More: http://busparkinggames.org/
Become the best by trying your hand at all of our parking games and find that parking isn't as easy as you may think it is. Who would have thought they would be so much fun?!
This is the best site of funny games: http://funnygames28.com/
Chủ Nhật, 1 tháng 6, 2014
Copy command
Copy folder (ví dụ copy folder "html" ra 1 folder mới tên là "site2")
$ cp -avr /var/www/html /var/www/site2
$ cp -avr /var/www/html /var/www/site2
Thứ Năm, 29 tháng 5, 2014
Code hiển thị lỗi web do server hoặc php
Code hiển thị lỗi php hoặc server,vps khi web không báo lỗi (hoặc màn hình trắng)
- Chèn trên cùng file php
<?php
// ----------------------------------------------------------------------------------------------------
// - Display Errors
// ----------------------------------------------------------------------------------------------------
ini_set('display_errors', 'On');
ini_set('html_errors', 0);
// ----------------------------------------------------------------------------------------------------
// - Error Reporting
// ----------------------------------------------------------------------------------------------------
error_reporting(-1);
// ----------------------------------------------------------------------------------------------------
// - Shutdown Handler
// ----------------------------------------------------------------------------------------------------
function ShutdownHandler()
{
if(@is_array($error = @error_get_last()))
{
return(@call_user_func_array('ErrorHandler', $error));
};
return(TRUE);
};
register_shutdown_function('ShutdownHandler');
// ----------------------------------------------------------------------------------------------------
// - Error Handler
// ----------------------------------------------------------------------------------------------------
function ErrorHandler($type, $message, $file, $line)
{
$_ERRORS = Array(
0x0001 => 'E_ERROR',
0x0002 => 'E_WARNING',
0x0004 => 'E_PARSE',
0x0008 => 'E_NOTICE',
0x0010 => 'E_CORE_ERROR',
0x0020 => 'E_CORE_WARNING',
0x0040 => 'E_COMPILE_ERROR',
0x0080 => 'E_COMPILE_WARNING',
0x0100 => 'E_USER_ERROR',
0x0200 => 'E_USER_WARNING',
0x0400 => 'E_USER_NOTICE',
0x0800 => 'E_STRICT',
0x1000 => 'E_RECOVERABLE_ERROR',
0x2000 => 'E_DEPRECATED',
0x4000 => 'E_USER_DEPRECATED'
);
if(!@is_string($name = @array_search($type, @array_flip($_ERRORS))))
{
$name = 'E_UNKNOWN';
};
return(print(@sprintf("%s Error in file \xBB%s\xAB at line %d: %s\n", $name, @basename($file), $line, $message)));
};
$old_error_handler = set_error_handler("ErrorHandler");
// other php code
?>
- Chèn trên cùng file php
<?php
// ----------------------------------------------------------------------------------------------------
// - Display Errors
// ----------------------------------------------------------------------------------------------------
ini_set('display_errors', 'On');
ini_set('html_errors', 0);
// ----------------------------------------------------------------------------------------------------
// - Error Reporting
// ----------------------------------------------------------------------------------------------------
error_reporting(-1);
// ----------------------------------------------------------------------------------------------------
// - Shutdown Handler
// ----------------------------------------------------------------------------------------------------
function ShutdownHandler()
{
if(@is_array($error = @error_get_last()))
{
return(@call_user_func_array('ErrorHandler', $error));
};
return(TRUE);
};
register_shutdown_function('ShutdownHandler');
// ----------------------------------------------------------------------------------------------------
// - Error Handler
// ----------------------------------------------------------------------------------------------------
function ErrorHandler($type, $message, $file, $line)
{
$_ERRORS = Array(
0x0001 => 'E_ERROR',
0x0002 => 'E_WARNING',
0x0004 => 'E_PARSE',
0x0008 => 'E_NOTICE',
0x0010 => 'E_CORE_ERROR',
0x0020 => 'E_CORE_WARNING',
0x0040 => 'E_COMPILE_ERROR',
0x0080 => 'E_COMPILE_WARNING',
0x0100 => 'E_USER_ERROR',
0x0200 => 'E_USER_WARNING',
0x0400 => 'E_USER_NOTICE',
0x0800 => 'E_STRICT',
0x1000 => 'E_RECOVERABLE_ERROR',
0x2000 => 'E_DEPRECATED',
0x4000 => 'E_USER_DEPRECATED'
);
if(!@is_string($name = @array_search($type, @array_flip($_ERRORS))))
{
$name = 'E_UNKNOWN';
};
return(print(@sprintf("%s Error in file \xBB%s\xAB at line %d: %s\n", $name, @basename($file), $line, $message)));
};
$old_error_handler = set_error_handler("ErrorHandler");
// other php code
?>
Chủ Nhật, 16 tháng 3, 2014
ssh command
Delete user trong phpmyadmin:
DELETE FROM mysql.user WHERE user='root'
Copy toàn bộ folder ảnh sang folder uploads (sau đó xóa ảnh tại folder gốc):
sudo cp -r /root/Dropbox/anh/* /var/www/html/wp-content/uploads/2014/04 find /root/Dropbox/anh/ -type f -delete
-------------
file.sh
mysqldump -u -p wordpress > /backup/database_`date '+%d-%m-%Y'`.sql
RewriteEngine on RewriteRule ^(.*)$ http://domain.com/$1 [R=301,L]
SELECT * FROM tên bảng
WHERE `tên cột` like "%%";
----
SELECT * FROM wp_posts
WHERE `post_content` like "%%";
UPDATE tên bảng SET tên cột = REPLACE ( tên cột, 'a', 'b' );
UPDATE wp_posts SET post_content = REPLACE ( post_content, 'a', 'b' );
Thay thế 1 ký tự = 1 ký tự khác
Update …
SET
REPLACE
Đổi câu từ ở nhóm:
UPDATE wp_term_taxonomy SET description = REPLACE ( description , 'a', 'b' )
Tạo folder
mkdir ten_folder
Cài sh
cd /
wget duong dan file sh (tải về server mới)
sh vps.sh
Chmod 777 và set các file bên trong 777
$ chmod -R 0777 directoryNameHere
Backup Database:
mysqldump -u DBUSERNAME -pDBPASSWORD DBNAME > backup.sql
Nén file tgz
tar -cvzf backup.tgz /home/user/project
GIai nen
tar-xzvf file.tar.gz hoặctar-xzvf file.tgz
rm -rfv nFolders/ Xóa folder
Thứ Hai, 20 tháng 1, 2014
Command Ubuntu
Copy file or Folder:
sudo /etc/init.d/apache2 restart
Tìm 1 file (cd về gốc cd /):find -name 'php.ini'
Đổi password truy cập phpmyadmin: mysqladmin -u root password NEWPASSWORD
Chuyển đến thư mục home:
Chuyển đến thư mục /var/cache
Chuyển đến thư mục cha của thư mục hiện hành:
<VirtualHost *:80>
ServerAdmin webmaster@vidu
DocumentRoot /home/wordpress/public_html
Servername vidu
ServerAlias www.vidu
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@vidu
DocumentRoot /home/wordpress/public_html
Servername tenmien1.com
ServerAlias www.tenmien1.com
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@vidu
DocumentRoot /home/folder_thêm
Servername tenmien2.com
ServerAlias www.tenmien2.com
</VirtualHost>
cp -R /path/to/FOLDER1/* /path/to/FOLDER2
Restart Apache Ubuntu:sudo /etc/init.d/apache2 restart
Tìm 1 file (cd về gốc cd /):find -name 'php.ini'
Đổi password truy cập phpmyadmin: mysqladmin -u root password NEWPASSWORD
Chuyển đến thư mục home:
Mã:
cd ~/
Chuyển đến thư mục /var/cache
Mã:
cd /var/cache
Chuyển đến thư mục cha của thư mục hiện hành:
Mã:
cd ..
Nén file
$ sudo tar -zcvpf /tenfile.tar.gz /ten_folder
Tải 1 file trên url về (ví dụ wp):
$ sudo tar -zcvpf /tenfile.tar.gz /ten_folder
Tải 1 file trên url về (ví dụ wp):
$ wget http://wordpress.org/latest.tar.gzGiải nén file này:tar -xzvf latest.tar.gzCopy vào thư mục khác:sudo cp -r ~/wordpress/* /var/www/html
Thêm webite trong Ubuntu VPS DigitalOcean:
/etc/apache2/sites-enabled/file:<VirtualHost *:80>
ServerAdmin webmaster@vidu
DocumentRoot /home/wordpress/public_html
Servername vidu
ServerAlias www.vidu
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@vidu
DocumentRoot /home/wordpress/public_html
Servername tenmien1.com
ServerAlias www.tenmien1.com
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@vidu
DocumentRoot /home/folder_thêm
Servername tenmien2.com
ServerAlias www.tenmien2.com
</VirtualHost>
Thứ Bảy, 28 tháng 12, 2013
Đặt quảng cáo vào ứng dụng Android!
[TuT] Đặt quảng cáo vào ứng dụng Android!
Chào các bạn, tư tưởng của Google là free, và Android cũng không nằm ngoại lệ. Với những ai tự tay viết app, muốn thu lại chút công sức, theo mình có 1 số con đường sau:
1/ Bán app trên G Play => với app thuần Việt thì vụ này coi bộ hơi bất khả thi (dân VN mà :P)
2/ Bán đứt app cho người khác => nghe có vẻ bất khả thi)
3/ Bán vị trí quảng cáo => hình thức này chưa phổ biến lắm
4/ Kêu gọi ủng hộ từ user (qua ngân hàng, cổng thanh toán trực tuyến (PayPal, Ngân Lượng,...),...) => cách này nghe cũng khó khăn
5/ Bán quảng cáo cho bên trung gian => cách này đa số dev vẫn dùng, bởi nó có 1 số điểm thuận lợi sau:
a) Miễn phí cho dev: mình đặt quảng cáo lên không mất gì cả, tất cả những gì mình cần là 1 ít không gian trong app, 1acc PayPal, 1 thẻ ATM vậy là đủ;
b) Tính an toàn, trung thực cao: bởi được các ông lớn đứng ra bảo kê
c) Tiện lợi, nhanh chóng trong khâu thống kê và thanh toán: họ có công cụ tự động thống kê, thanh toán theo kỳ thông qua các cổng thanh toán trực tuyến (PayPal là 1 ví dụ);
d) User nếu có thiện chí hoàn toàn có thể ủng hộ mình mà không hề tốn 1 xu nào cả, công việc của họ đơn giản chỉ là click vào banner quảng cáo sau mỗi lần sử dụng app;
e) còn nhiều tính năng nữa bạn tự khám phá
Vậy nên, mình xin làm 1 cái abc nho nhỏ về AdMod, mạng quảng cáo được đa số dev sử dụng hiện nay.
AdMob là nhà trung gian quảng cáo do đại gia Google bảo kêmình xin trích 1 đoạn trên Internet nói về AdMob:
Sơ sơ qua như vậy thôi, h mình xin vào thẳng chi tiết:1. Google Admob là gì?
Để tiến hành add quảng cáo vào ứng dụng chúng ta phải đề cập đến 3 yếu tố con người hay tổ chức.
1.1 Advertiser; người hay công ty muốn đăng quảng cáo của họ
1.2 Publisher: Chính là người xây dựng và phát triển ứng dụng
1.3 Admob: Một tổ chức được thành lập ra để liên kết giữa Advertiser và Publisher.
Admob phải là một tổ chức có uy tín trên thế giới. Chẳng hạn như Google. Tổ chức này được lập ra không chỉ giúp Advertiser & Publisher dễ dàng tìm đến với nhau mà quan trọng hơn chính là để đảm bảo sự công bằng giữa Advertiser & Publisher. Một tổ chức chống gian lận thương mại và chịu mọi trách nhiệm đối với Advertiser & Publisher nếu 1 trong 2 bên có hành vi gian lận.
2. Quy trình quảng cáo
2.1 Advertiser đăng ký quảng cáo với Google Admob
Cách thức đăng ký quảng cáo như thế nào thì mình không rõ vì mình chỉ là một Publisher.
2.2 Publisher đăng ký nhận quảng cáo với Admob theo các bước sau:
2.2.1 Để đăng ký nhận quảng cáo Publisher phải đăng nhập vào Admob dựa vào tài khoản Gmail hoặc tài khoản Admob. Sau khi đã đăng nhập, Publisher sẽ được cung cấp một trang web để quản lý click count, số tiền nhận được từ quảng cáo,... và rất nhiều thứ khác.
Trong quá trình đăng ký, Publisher sẽ được yêu cầu cung cấp một tài khoản trực tuyến paypal hoặc một tài khoản nào đó có thể thanh toán. Admob sẽ giúp bạn thống kê về số người click vào quảng cáo trên ứng dụng của bạn và số tiền mà bạn nhận được. Số tiền này sẽ được chuyển vào tài khoản paypal mà bạn đã khai báo.
1/ Đăng ký 1 acc PayPal:
Bạn vào địa chỉ http://paypal.com/ đăng ký lấy 1 tài khoản, cách thức đăng ký và sử dụng cũng như chứng thực tài khoản bạn có thể tìm thấy rất nhiều trên Google nên mình không nói ở đây nữa, chỉ chú ý 1 điều là nên dùng Visa trả trước của ngân hàng ACB.
2/ Đăng ký 1 acc AdMob:
Bạn vào http://www.google.com/ads/admob/ để đăng ký lấy 1 acc, hoặc có thể dùng chính tài khoản Gmail để đăng nhập (hàng của Google mà :P) nhớ chọn acc type là adversiter nhé!
3/ Add thư viện:
Bạn vào https://developers.google.com/mobile-ads-sdk/download để tải về thư viện mới nhất về: GoogleAdMobAdsSdkAndroid.zip
Sau khi tải về, bạn giải nén ra bạn được 1 file tên là GoogleAdMobAdsSdk-tên-phiên-bản.jar (vd: GoogleAdMobAdsSdk-6.0.1.jar), bạn xóa đi chỉ để lại GoogleAdMobAdsSdk.jar
Trở về app, tại thư mục gốc của app, bạn tạo thư mục "libs" và chép file GoogleAdMobAdsSdk.jar cùng folder docs vào:
Tiếp, bạn chuột phải vào Project->Properties-> chọn Java Build Path-> chọn tab Libraries-> chọn mục Add JARs:
Bạn trỏ tới thư mục "libs" lúc nãy và add file GoogleAdMobAdsSdk.jar vào. Okie
4/ Thêm com.google.ads.AdActivity trong Manifest:
Bạn thêm phần mô tả Activity này vào MF:Không thể thiếu quyền truy cập internetPHP Code:<activity android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>:
5/ Code Code CodePHP Code:<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
a) Lưu ý là khi tạo Project thì phải tạo đích platform là Android 4.0 (sdk 14) trở lên, còn trong manifest thì bạn có thể yêu cầu phiên bản thấp hơn vẫn chạy được:mình đã test trên máy thiệt chạy Android 2.2 (ver 8) chạy okie.PHP Code:<uses-sdk android:minSdkVersion="5" />
b) Tạo giao diện:
Giao diện chẳng có gì ngoài không gian cho ads:***Giải thích chút:PHP Code:<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<com.google.ads.AdView android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="50dp"
ads:adUnitId="a14ff719e961aee"
ads:adSize="BANNER"
ads:testDevices="D8946E12D15465BFF8A2737A4D52DF61"/>
</RelativeLayout>
- adZise là kích cỡ của ads: mình để BANNER là kích thước 320x50 px nên chiều cao bạn phải dành ra tối thiểu 50px cho ads và chiều rộng tương tự;
- adUnitId: là id của cái banner mà AdMob cung cấp cho bạn, để có được id này, bạn làm như sau:
+ Đăng nhập vào AdMob, chọn thẻ Sites&Apps
+ Chọn Add Site/App
+ Chọn Android App và điền các thông số cần thiết (riêng mục Android Package URL: nếu bạn có link Market thì điền vào, còn không thì để trống);
+ Sau khi tạo xong ads, bạn quay trở lại tab Sites&Apps, đưa con trỏ chuột vào chỗ ads và chọn Manage Setting:
Publisher ID: a14ff719e961aee <=Here
- testDevices: đây là id của device của bạn dùng để test, với id này, khi bạn click ads trên device sẽ không được tính là click (tránh bị vi phạm quy chế của họ); để lấy ID này, bạn có thể tìm trong lagcat với nội dung sau: To get test ads on this device,... với key là Ads (màu xanh lá cây nhé) hoặc có thể dùng cách khác mà bạn biết :P
c) Code:
+ Import các 2 gói sau:+ Tạo đối tượng AdView để hiển thị adsCode:import com.google.ads.AdRequest; import com.google.ads.AdView;+ Lấy nội dung ads về:Code:private AdView adView;+ Nhớ dọn dẹp ads khi kết thúc ứng dụng để tiết kiệm pin, bộ nhớ, data,... cho user:PHP Code:adView = (AdView) this.findViewById(R.id.adView);
adView.loadAd(new AdRequest());Okie như vậy là Ads sẵn sàng sử dụng, bạn có thể chạy thử trên device hoặc máy ảo để xem thử thành quảPHP Code:@Override
public void onDestroy() {
if (adView != null) {
adView.destroy();
}
super.onDestroy();
}
Nguồn tham khảo:
https://developers.google.com/mobile...d/fundamentals
https://developers.google.com/mobile...oid/banner_xml
https://developers.google.com/mobile...ownloadandroid
Project Demo:Bạn đổi đuôi Android4Vn thành .rar và giải nén bình thường nhéCode:http://www.mediafire.com/?cc3cf067ammshqr
Sưu tầm hay
Sưu tầm hay
Code chèn trong mã nhúng để người dùng không click out link đươc: allownetworking="internal"
Code chèn trong mã nhúng để người dùng không click out link đươc: allownetworking="internal"
Chuỗi phổ biến trong PHP
| Character | Entity | Decimal | Hex | Rendering in Your Browser | ||
|---|---|---|---|---|---|---|
| Entity | Decimal | Hex | ||||
| quotation mark = APL quote | " | " | " | " | " | " |
| ampersand | & | & | & | & | & | & |
| less-than sign | < | < | < | < | < | < |
| greater-than sign | > | > | > | > | > | > |
| Latin capital ligature OE | Œ | Œ | Œ | Œ | Œ | Œ |
| Latin small ligature oe | œ | œ | œ | œ | œ | œ |
| Latin capital letter S with caron | Š | Š | Š | Š | Š | Š |
| Latin small letter s with caron | š | š | š | š | š | š |
| Latin capital letter Y with diaeresis | Ÿ | Ÿ | Ÿ | Ÿ | Ÿ | Ÿ |
| modifier letter circumflex accent | ˆ | ˆ | ˆ | ˆ | ˆ | ˆ |
| small tilde | ˜ | ˜ | ˜ | ˜ | ˜ | ˜ |
| en space |   |   |   | |||
| em space |   |   |   | |||
| thin space |   |   |   | |||
| zero width non-joiner | ‌ | ‌ | ‌ | | | |
| zero width joiner | ‍ | ‍ | ‍ | | | |
| left-to-right mark | ‎ | ‎ | ‎ | | | |
| right-to-left mark | ‏ | ‏ | ‏ | | | |
| en dash | – | – | – | – | – | – |
| em dash | — | — | — | — | — | — |
| left single quotation mark | ‘ | ‘ | ‘ | ‘ | ‘ | ‘ |
| right single quotation mark | ’ | ’ | ’ | ’ | ’ | ’ |
| single low-9 quotation mark | ‚ | ‚ | ‚ | ‚ | ‚ | ‚ |
| left double quotation mark | “ | “ | “ | “ | “ | “ |
| right double quotation mark | ” | ” | ” | ” | ” | ” |
| double low-9 quotation mark | „ | „ | „ | „ | „ | „ |
| dagger | † | † | † | † | † | † |
| double dagger | ‡ | ‡ | ‡ | ‡ | ‡ | ‡ |
| per mille sign | ‰ | ‰ | ‰ | ‰ | ‰ | ‰ |
| single left-pointing angle quotation mark | ‹ | ‹ | ‹ | ‹ | ‹ | ‹ |
| single right-pointing angle quotation mark | › | › | › | › | › | › |
| euro sign | € | € | € | € | € | € |
Thứ Ba, 22 tháng 10, 2013
Đổi về mặc định mật khẩu wordpress
Đổi về mật khẩu mặc định của wordpress
$P$B7u/NYhVtuYh/cBLFwjpMmeyImMaRb.
$P$B7u/NYhVtuYh/cBLFwjpMmeyImMaRb.
Cách chỉnh sửa thẻ meta title của bài viết, category theo ý
Thay đoạn:
<?php
$blog_title = get_bloginfo('name');
if (is_home()) {
$blog_title = get_bloginfo('name') . " | " . get_bloginfo('description');
}
if (is_single()) {
$blog_title = get_the_title();
}
if (is_category()) {
$blog_title = single_cat_title("",false);
}
if (is_page()) {
$blog_title = the_title();
}
?>
<title><?php echo $blog_title; ?></title>
vào đoạn mặc định <title> ví dụ</title>
Thứ Bảy, 21 tháng 9, 2013
Các hàm cơ bản sử dụng trong Wordpress
Phần 1: Các hàm cơ bản trong Wordpress
Các hàm thường dùng trong thiết kế theme wordpress-phần 1
Nội dụng của bài hôm nay: đi tìm hiểu chức năng của các hàm hay sử dụng trong công việc thiết kế them wordpress
1.bloginfo( ‘charset’ ): hàm này được gọi với tham số charset nhằm xác định charset trong <meta charset=”<?php bloginfo( ‘charset’ ); ?>” />. Charset chính là việc xác định định dạng ngôn ngữ chính của website, tiếng việt hay tiếng anh. Nếu không xác định charset, có thể website của bạn sẽ không hiển thị được tiếng việt
2.bloginfo( ‘name’ ): hàm bloginfo với đối số name sẽ có nhiệm vụ in ra tên của blog
3.bloginfo( ‘description’ ): sẽ lấy ra mô tả của blog
4.bloginfo( ‘stylesheet_url’ ):in đường dẫn tới file style
Bạn lưu ý nếu hàm chó chữ get ở đầu hàm thì hàm đó nếu bạn muốn in ra thì phải dùng echo nhé. Ví dụ: echo get_bloginfo(‘name’) sẽ bằng bloginfo(‘name’) cái này hay dùng để gán cho biến
Các Hàm Thường Dùng Trong Thiết Kế Theme Wordpress
5. get_template_directory_uri(): đường dẫn tới theme hiện đang được kích hoạt, như nói ở trên nêu dùng để gán chó biên thì dùng hàm có tiền tố get ở đầu nhé bạn. Vì vậy muôn in ra thì phải dùng thêm echo. Echo trong php là hàm để in
6.wp_title(): hàm này có nhiệm vụ lấy tiêu đề của một bài viết. Nó thường được dùng trong thẻ <title>
7.get_option( ” ): lấy giá trị của các name option có trong bảng wp_options. Ví dụ tôi muốn lây tên của blog thì tôi sẽ dùng get_option(‘name’). Điều này sẽ tương đương với get_bloginfo(‘name’);
8.is_home(): hàm này trả về kết quả true hoặc false. Nếu khi bạn mới vào blog (trang home) thì hàm này có giá trị true.
Tương tự như vậy bạn có thể hiểu các hàm sau đây nói gì:
comments_open(), is_404(), is_admin(), is_admin_bar_showing(), is_archive(), is_attachment(), is_author(), is_category(), is_comments_popup(), is_date(), is_day(), is_feed(), is_front_page(), is_home(), is_local_attachment(), is_multi_author, is_month(), is_new_day(), is_page(), is_page_template(), is_paged(), is_plugin_active(), is_plugin_active_for_network(), is_plugin_inactive(), is_plugin_page(), is_post_type_archive(), is_preview(), is_search(), is_single(), is_singular(), is_sticky(), is_tag(), is_tax(), is_taxonomy_hierarchical(), is_time(), is_trackback(), is_year(), in_category(), in_the_loop(), is_active_sidebar(), is_active_widget(), is_blog_installed(), is_rtl(), is_dynamic_sidebar(), is_user_logged_in(), has_excerpt(), has_post_thumbnail(), has_tag(), pings_open(), email exists(), post_type_exists(), taxonomy_exists(), term_exists(), username exists(), wp_attachment_is_image(), wp_script_is()
9. wp_head(): luôn luôn gọi hàm này trong phần header. Bởi nếu không có hàm này thì các script của plugin (giống như là module) sẽ không được thêm vào thẻ head. Ví dụ jquery của một plugin chẳng hạn
10. body_class(): Bạn phải luôn luôn gọi hàm này trong thẻ body, bởi trong quá trình thiết kế theme có phần đó là ảnh và màu nền của trang sẽ được gọi thông qua hàm này
11. home_url(): In ra địa chỉ blog của bạn
Tới đây tôi xin tạm dừng, bởi học một lúc quá nhiều bạn sẽ không nắm hết, nhớ học bài thậy kỹ nhé bạn, bởi trong giai đoạn này tôi cung cấp kiến thức nên, sau này khi đi vào phần chuyển từ file html sang theme wordpress tôi sẽ không nhắc lại
Phần 2: Function PHP Wordpress Themes
Hôm nay chúng ta sẽ tiếp tục đi tìm hiểu về các hàm thường dùng trong thiết kế theme wordpress, như tôi đã nói đây là kiến thức nền để bạn có thể thiết kế theme wordpress, do đó bạn phải chịu khó năm nó, giống như học từng vựng tiếng anh ấy
1. get_category_link( $category_id ): hàm này sẽ trả về các link của một category với tham số truyền vào đó là id category
2. get_cat_name($category_id): hàm này sẽ trả về tên của chuyên mục với id category
Hai hàm trên thường đi với nhau để tạo nên một liên kết của chuyên mục, ví dụ
” rel=”nofollow” target=”_blank”>
Như tôi đã nói ở bài trước những hàm có chữ get ở đầu nếu muốn in ra màn hình bạn phải dùng echo
3. wp_list_categories($args) : hàm này sẽ in ra một danh sách các chuyên mục tùy theo tham số $args truyền vào. Nếu bạn bạn gọi wp_list_categories() thì các tham số mặc định sau được gọi
‘show_option_all’ => ”,
‘orderby’ => ‘name’,
‘order’ => ‘ASC’,
‘style’ => ‘list’,
‘show_count’ => 0,
‘hide_empty’ => 1,
‘use_desc_for_title’ => 1,
‘child_of’ => 0,
‘feed’ => ”,
‘feed_type’ => ”,
‘feed_image’ => ”,
‘exclude’ => ”,
‘exclude_tree’ => ”,
‘include’ => ”,
‘hierarchical’ => 1,
‘title_li’ => __( ‘Categories’ ),
‘show_option_none’ => __(‘No categories’),
‘number’ => null,
‘echo’ => 1,
‘depth’ => 0,
‘current_category’ => 0,
‘pad_counts’ => 0,
‘taxonomy’ => ‘category’,
‘walker’ => null
); ?>
Các tham số trong hàm này bạn thấy thì nhiều vậy, nhưng trong thực tế 3 hàm trên kết hợp với nhau tạo ra một dãy các chuyên mục giống như hình dưới đây:
1. get_category_link( $category_id ): hàm này sẽ trả về các link của một category với tham số truyền vào đó là id category
2. get_cat_name($category_id): hàm này sẽ trả về tên của chuyên mục với id category
Hai hàm trên thường đi với nhau để tạo nên một liên kết của chuyên mục, ví dụ
” rel=”nofollow” target=”_blank”>
Như tôi đã nói ở bài trước những hàm có chữ get ở đầu nếu muốn in ra màn hình bạn phải dùng echo
3. wp_list_categories($args) : hàm này sẽ in ra một danh sách các chuyên mục tùy theo tham số $args truyền vào. Nếu bạn bạn gọi wp_list_categories() thì các tham số mặc định sau được gọi
‘show_option_all’ => ”,
‘orderby’ => ‘name’,
‘order’ => ‘ASC’,
‘style’ => ‘list’,
‘show_count’ => 0,
‘hide_empty’ => 1,
‘use_desc_for_title’ => 1,
‘child_of’ => 0,
‘feed’ => ”,
‘feed_type’ => ”,
‘feed_image’ => ”,
‘exclude’ => ”,
‘exclude_tree’ => ”,
‘include’ => ”,
‘hierarchical’ => 1,
‘title_li’ => __( ‘Categories’ ),
‘show_option_none’ => __(‘No categories’),
‘number’ => null,
‘echo’ => 1,
‘depth’ => 0,
‘current_category’ => 0,
‘pad_counts’ => 0,
‘taxonomy’ => ‘category’,
‘walker’ => null
); ?>
Các tham số trong hàm này bạn thấy thì nhiều vậy, nhưng trong thực tế 3 hàm trên kết hợp với nhau tạo ra một dãy các chuyên mục giống như hình dưới đây:
Các hàm tạo category trong wordpress
4.the_title(): Hàm này quen quen nhỉ, trong lúc tìm hiểu vòng lặp tôi đã nhắc đến hàm này rồi, hàm này sẽ in ra tiêu đề của bài viết. Hàm này phải dùng trong vòng lặp bạn nhé, nếu bạn dùng nó ngoài vòng lặp, thì nó sẽ không hoạt động
5.the_content():Hàm này sẽ in ra nội dung của bài viết, tương tự như hàm the_title(), phải gọi nó trong vòng lặp thì nó mới hoạt động
6.the_permalink(): hàm này sẽ in ra link của bài viết, hàm này chỉ hoạt động trong vòng lặp
Tôi xin tạm dựng bài học hôm nay tại đây, hẹn gặp lại bạn ở bài tiếp theo
5.the_content():Hàm này sẽ in ra nội dung của bài viết, tương tự như hàm the_title(), phải gọi nó trong vòng lặp thì nó mới hoạt động
6.the_permalink(): hàm này sẽ in ra link của bài viết, hàm này chỉ hoạt động trong vòng lặp
Tôi xin tạm dựng bài học hôm nay tại đây, hẹn gặp lại bạn ở bài tiếp theo
Đăng ký:
Bài đăng (Atom)