Pixzee_downloadpsd.co_
Share Pixzee Single Page Free PSD – (Download)

Download Pixzee-Parallax Singlepage Free PSD. Friends Today we are giving away Pixzee-Parallax Singlepage Free PSD. Pixzee is a modern and elegant Singlepage Theme. This free psd theme is suitable for any type of Business, Creative Corporate, Corporation, Organization, Community, Company Profile, Personal Portfolio, News, Creative Blog, Gallery Photo and more.!!
Pixzee_downloadpsd.co_

Read More
ModusVersus_cover
Share template PDS website tuyệt đẹp full (12 layout PDS)

ModusVersus_cover

Modus Versus is a free multi-purpose PSD template, designed on the 1170 grid system. Excellent for use with responsive frameworks like the popular Twitter Bootstrap, it could form the basis of a good corporate site.
Designed by Dimitar Tsankov, aka Outlinez; 12 PSD files are included, fully layered and organized into folders. Unfortunately the stock images aren’t included.
It would be an ideal choice for a marketing or professional services company, or you could pick it apart and use elements of it in other projects.
As a free resource, we think it’s an excellent place for developers, or design students looking to take their first steps with Photoshop, to study building a layout in Adobe’s flagship product.

Author: http://www.webdesignerdepot.com/2013/06/free-psd-template-modus-versus/

Read More
opencart
Opencart 2.x – How can we create a position

Hi các bạn,

Thật lâu rồi mới ngồi viết bài như thế này, lý do là dạo này bận dự án trên công ty mà lại làm với ngôn ngữ mới thành thử không thu xếp được thời gian viết tutorial chia sẻ với anh em. Hôm nay nhân tiện đang nghịch con opencart v 2.x thì tiện tay note cái hướng dẫn tạo vị trí trong opencart 2.x cho anh em tham khảo. Anh em nào bít rùi thì miễn đọc nhé hehe.

opencart

Ở Opencart 2.x thì có sự thay đổi chút về file lưu vị trí, vì hiện tại OPC 2.x hướng quản lý position tập chung, thành ra ta chủ chỉ cần khai báo vị trí ở một file có thể sử dụng trong tất cả các module. Tiện quá phải không kaka.

Thôi khỏi dài dòng, bắt tay vào làm nhé.

P/S:Mình sẽ thêm một vị trí có tên là  content_slideshow  có nhiệm vụ hiển thị module slideshow ở trang home.

Bước 1:

Bạn mở file opencart2\catalog\controller\common\home.php và tìm đến dòng 15 thêm đoạn vào trước hoặc sau tùy ý:

Mở tiếp file opencart2\catalog\view\theme\default\template\common\home.tpl và thêm dòng này vào nơi mà sẽ hiển thị slideshow: <?php echo $content_slideshow; ?>

Bước 2:

Nhân bản file  content_top.php trong opencart2\catalog\controller\common\content_top.php và đổi tên thành content_slideshow.php

Tiếp tục mở file content_slideshow.php vừa nhân bản ra sửa lại các dòng như sau:

line 1: ControllerCommonContentTop  —->> ControllerCommonContentSlideshow

line 46:

$modules = $this->model_design_layout->getLayoutModules($layout_id, 'content_top');

Thành:

$modules = $this->model_design_layout->getLayoutModules($layout_id, 'content_slideshow');

line 64 – 68:

Thành:

Thực ra chỉ cần tìm cái nào có content_top thì chuyển thành content_slideshow là xong! 😀

Bước 3:

Mở file opencart2\admin\view\template\design\layout_form.tpl tìm đến dòng 107 hoặc tim đoạn:

Thêm vào trước hoặc sau nó đoạn code sau:

Tìm tiếp đến đoạn:

Thêm vào trước hoặc sau:

Ok, như vậy là xong rồi, bạn hãy lưu lại toàn bộ và vào admin để check vị trí nhé.

P/S: ngoài ra có một điều rất quan trọng cần chú ý ở đây đó là độ dài ký tự của vị trí không được quá 14 ký tư, ví dụ như content_slideshow là bị vượt quá rồi đó, lý do là tên của vị trí bị giới hạn ký tự. để khắc phục điều này bạn có thể đặt tên vị trí trong giới hạn cho phép hoặc có thể vào CSDL tìm table: layout_module sửa lại độ length của vị tri, như mình đặt thì cho nó bằng 100 luôn:

position

Read More
logo_10gen_mongodb1
Bài 2: Hướng dẫn connect mongodb với Sails.js

Chào các bạn,

Chúng ta lại gặp nhau trong bài số 2 tìm hiểu về sails.js. Trong bài hôm nay tui sẽ hướng dẫn các bạn cách kết nối sails.js với mongoDB.

Tại sao tôi lại nói về mongoDB mà không phải là về SQLServer, Oracel hay MySQL rất được phổ biến trong giới website ?

Đơn giản đối với tôi đó là về tốc độ, khả năng truy suất của nó rất tuyệt vời. còn vì sao nó tuyệt vời mời bạn lên anh Hai Google nhé, điều này không được tìm thấy ở bài viết này kaka.

logo_10gen_mongodb1

 

OK, let’s go!

Việc đầu tiên chắc bạn nào cũng phải biết là phải download MongoDB về cài, các bạn có thể download tại trang chủ của nó tại link ở đây: https://www.mongodb.org/downloads hãy tự chọn cho mình một bản phù hợp với HĐH của mình.

Còn việc cài Sails.js tôi đã nói ở bài số 1 rồi nhé. Bây giờ chúng ta đi kết nối Sails.js với mongoDB

 

Các bạn cần cài đặt một “driver” để connect với mongo bằng NPM, vì vậy hãy bật cmd lên, di chuyển vào forder project của mình và chạy lệnh sau:

Mở file config/connection.js điền các thông tin tương ứng vào đoạn sau:

Và các bạn cần mở tiếp file config/models.js và cấu hình như sau:

Để biết thêm các cấu hình ở các phiên bản thấp hơn các bạn truy cập vào: https://www.npmjs.com/package/sails-mongo để biết thêm nhé.

Read More
2768497
Hướng dẫn fix lỗi compiling bcrypt – node.js

Hi, lỗi về bcrypt rất hay xảy ra trong quá trình cài đặt, có rất nhiều yếu tố gây ra lỗi này nhưng dù là gì đi nữa bạn chỉ cần thao tác theo hướng dẫn sau là ok.

Ở đây mình ví dụ như lỗi mình gặp:

Vậy việc fix cái lỗi này như thế nào ???

Các bạn làm từng bước như sau:

Bước 1: Kiểm tra xem đã cài đặt Python chưa, nếu chưa cài tì hãy cài đặt Python vào. Link download tại địa chỉ: https://www.python.org/download/releases/2.7.5/

Bước 2: Cài đặt Visual Studio 2012 hoặc 2013 (or other). Link đây: http://www.microsoft.com/en-us/download/details.aspx?id=34673

Bước 3: Cài đặt Windows SKD (for win 7/8) Link: https://msdn.microsoft.com/en-us/library/windows/desktop/hh852363.aspx

Bước 4: Mở CMD hoặc Developer command prompt for VS2012 và chạy bằng quyền administrator chạy lệnh sau:

Ok, giờ tận hưởng kết quả đi nào !

Read More
git-la-gi-tai-sao-su-dung-git
Hướng dẫn sử dụng git và github.com

Chào các bạn,

Tình hình là cũng do đang phải sử dụng cái này, tiện thể notes lại đôi lúc quên nhìn lại cho dễ, cũng là để những ai bắt đầu sử dụng git và github.com dễ làm quen.

OK, Let’s go!

Chuẩn bị:

1. Cài đặt Git trên máy (download tại : https://git-scm.com/download/win)

2. Vào trang Github.com đăng ký một tài khoản nhé

Thực hiện:

Bạn mở Git Bash được cài đặt vừa xong lên.

Bước 1.

Di chuyển đến thư mục cần đồng bộ với github.com bằng lệnh cd trong Dos

Bước 2:

Để tạo các cấu hình cho thư mục gõ lệnh:

bạn gõ tiếp lệnh:

lệnh này có tác dụng kiểm tra trạng thái các file đã được check trên git chưa

Bước 3:

Để add các file vào git gõ lệnh:

bạn cũng có thể gõ tiếp lệnh git status  để kiểm tra lại trạng thái của các file cũng như git

Bước 4:

Để đánh dấu ver bạn có gõ lệnh:

 Bước 5:

Nếu thành công, bạn sẽ thấy một mã hash code và nội dung ver được tạo ra.

Để kiểm tra log quá trình thời gian qua đã commit cái gì bạn có thể sử dụng lệnh sau để xem:

Bước 6:

Để đưa code từ mã của mình lên github thì đến đây bạn vào github.com để tạo một repository như sau:

repo-createSau đó bạn sẽ được chuyển đến trang sau:

repo-create-name

Bạn hãy điền đầy đủ thông tin:

  • * Tên dự án
  • * Mô tả dự án
  • * Để dự án public (vì để private bạn sẽ phải trả phí :D)
  • * Bấm Create

Sau khi hoàn thành bạn sẽ nhận được một đường link dạng:


  • Bạn sẽ copy đoạn đường link này và thực hiện bước kế tiếp:
  • Bước 7:

Bạn quay trở lại cmd của Git, bạn cần set đường link trên:


  • gõ tiếp: git remote -v bạn sẽ thấy thông tin đường dẫn push và fetch.
  • Bước 8:

  • Đẩy dữ liệu lên:

  • Mặc định là master tương đương với root, nếu bạn muốn tạo ra các nhánh để quản lý ver thì bạn đọc thêm lệnh tạo nhánh nhé.

Đến đây, thông thường là dữ liệu đã được đẩy lên github.com rồi. Nhưng trong một số trường hợp bạn có thể nhận được một lỗi như sau:

  • git

Bạn đừng bối dối, hãy gõ tiếp lệnh:


  •  
  • Như vậy là đã có thể đẩy được rồi.

Để xóa một file thì sử dụng lệnh:

Để lấy source từ github.com về máy thì làm như thế nào ?

Để cập nhật dữ liệu mới từ github.com gõ lệnh:

 

 

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

 

Read More
1898672_674689092577202_520955318_o
Bài 1: Nhập môn Sails.js Framework

Chào các bạn,

Để giới thiệu về node.js thì các bạn lên mạng search thì ra một đống, vì vậy tôi cũng không muốn viết vào trong bài làm gì, nếu có viết chắc cũng chỉ copy pate vào là xong, nhưng thôi, những cái đó các bạn google nhé. Trong bài này tôi muốn giới thiệu các bạn một framework của node.js có tên là Sails.js.

1898672_674689092577202_520955318_o

 

Sails là một javascript framework thiết kế theo mô hình MVC giống như Rails framework của Ruby. Nó được tạo ra giúp quá trình xây dựng các ứng dụng được dễ dàng hơn với Node.js, đặc biệt là các API, các ứng dụng trên 1 trang và các tính năng xử lý thời gian thực như chat.

 

Cài đặt Sails rất đơn giản. Sau khi bạn đã cài đặt Node.js và NPM kèm theo Node thì bạn vào run gõ cmd để mở cửa sổ Dos. Sau đó gõ lệnh sau để cài đặt:

Để tạo một project mới, bạn gõ lệnh sau:

Trong đó myNewProject là tên project của bạn. Sails sẽ tạo ra một fordoer có tên là myNewProject  và add tất cả những file cơ bản cần thiết để xây dựng ứng dụng.

Sau khi bạn tạo được project bạn cần di chuyển con trỏ tới forder chứa project đó bằng lệnh:

Để chạy project bạn tiếp tục gõ lệnh:

Mặc định cổng của Sails là 1337, vì vậy bạn chỉ cần gõ vào trình duyệt là:  http://localhost:1337  và bạn sẽ nhìn thấy trang default của Sails.

Sails.js hướng dẫn cơ bản

 

Ok, let’s go.

Bây giờ chúng ta sẽ đi tìm hiểu các forder, chức năng nhiệm vụ của từng file, từng forder được sinh ra:

The assets folder chứa các forder con của các tập tin javascript, css mà chúng ta muốn đưa vào trong quá trình xây dựng. Đây là nơi mà các bạn nên để các file đó, tránh trường hợp để linh tinh các file sai vị trí.

Chứa tất cả những file bạn muốn public, ví dụ như hình ảnh, video, hay favicon ….

Đây là một trong những thư mục quan trọng nhất của hệ thống. Sails đã thiết kế sao cho nó linh hoạt nhất.Nó xây dựng 1 quy ước chuẩn song nó cũng cho phép các developer có thể thay đổi các quy định này.

  • adapters.js – được sử dụng để cấu hình các bộ điều hợp cơ sở dữ liệu
  • connection.js – File thiết lập chung cho cấu hình như config cho CSDL
  • assets.js – asset settings for CSS and JS
  • bootstrap.js – code trong file này sẽ được chạy trước khi hiển thị ứng dụng ra màn hình
  • locales – folder chứa bản dịch
  • policies.js – user rights management configuration
  • routes.js – Sử dụng để điều hướng hệ thống
  • views.js – Xem các cài đặt liên quan

Foder này chúng ta sẽ sử dụng để xây dựng giao diện, các layout, bố cục, các file, forder chức năng thể hiện cho người dùng sẽ được xây dựng ở đây. Nói cách khác đây chính là tầng View của mô hình MVC. Chú ý file layout.ejs, nó là file thể hiện bố cục chung nhất, những liên kết với các file css, js sẽ được thể hiện ở đây.

Thư mục này có chứa các forder con:

  • adapters folder sử dụng bởi các ứng dụng xử lý các kết nối với csdl
  • * controllers folder chưa các file controller, đây là tầng controller trong mô hình MVC
  • * Model forder: tầng Model trong mô hình MVC, chứa các khai báo, các biến CSDL
  • * Policies folder lưu trữ quy tắc cho người dùng truy cập ứng dụng
  • * the api services implemented by the app are stored in the services folder
Read More
Bài 1: Hello world với Codeigniter cùng học với Itplusvn

Itplusvn(Clavier Héro) – Có rất nhiều Frame và hướng dẫn làm Codeigniter trên mạng vô số kể. Mình viết những bài này như kiểu muối bỏ bể nhưng vẫn muốn viết và trong bài sẽ có những phần giải thích sâu hơn về cấu trúc. Team bọn tớ hiện nay đang châm cứu về Frame  và chọn Codeigniter để thực hiện. Các bạn vào xem và ủng hộ nha.

 

Hướng dẫn Step by Step:

 

Bước 1: Ta cần có Framework trước nhé download bản mới nhất tại đây

https://ellislab.com/codeigniter/user-guide/installation/downloads.html.

 

Chú ý:

– Nhớ cài hỗ trợ là Xampp hoặc Wampp

– IDE có thể sử dụng Notepad++, PHPDesingner, NetbeanPHP

Mình thì quyết định tập làm bằng con NetbeanPHP

 

Bước 2: Giải nén vứt con CI(Codeigniter) vào htdoc của xampp hoặc wampp… Nhớ đặt tên thư mục nhé.

– Mình đặt tên nó là frame_ci 

 

3-17-2015 9-03-43 AM

 

Bước 3: Tạo một project cho NetBeanPHP

 

3-17-2015 9-24-30 AM

 

Bước 4: Tạo 1 controllers hello nào. chú ý cái con extents CI_Controller nhé tức là nó kế thừa lại của con kia. Cái này không nói ai cũng biết vì nó là lập trình hướng đối tượng cơ bản

 

class hello extends CI_Controller{
//put your code here

public function __construct() {
parent::__construct();
}

public function index(){

echo "hello world";
}
}

 

 

3-17-2015 9-26-30 AM

 

 

Bước 5: Chạy nào!

 

3-17-2015 9-30-33 AM

 

 

Chạy khá ok  nhưng ta dừng lại châm cứu một chút nhé!!

Đầu tiên là nói về mô hình chúng ta quá quen với mô hình MVC  rồi và chắc chắn là trong Framework  nào cũng sẽ có . Con trong CodeIgniter  ngoài MVC  thằng cha này sử dụng HMVC.

 

– Vậy HMVC là gì?  Sau một thời gian châm cứu thì suy ra rằng nó là Hierarchical-Model-View-Controller. Khi ta gửi 1 yêu cầu thì các yêu cầu có thể gửi đến các MCV để xử lý tư tưởng là vậy.

MVC-HMVC

 

Ban đầu mình cứ tưởng nó là HHelps nhưng không phải đâu nhé Helps là một cái khác… mình sẽ nói sau. Và tiếp tục châm cứu với mô hình Hierarchical-Model-View-Controller nhé.

 

Giờ ta quay lại CODE nhé!

 

Bước 6: Ta thêm một đoạn echo vào trong construct  nhé

3-17-2015 9-49-31 AM

Trong CI(Codeigniter) tớ gọi tắt cho dễ cũng giống bất cứ con lập trình hướng đối tượng nào còn function ___Construct() lúc nào cũng là con chạy đầu tiên thường ở trong nó xử lý các nội dung về kiểm tra phân quyền…. còn tùy cách viết nhé.

 

 

Còn tiếp….

Read More
Vì sao cần dùng Cache? Dùng thế nào để hiệu quả.

Vì sao cần dung cache?

 

Khi  bạn có một server với cấu hình hạn chế”“lượng người dùng truy cập” vào hệ thống của bạn” ngày càng tăng làm server của bạn luôn  “bị quá tải”“không đáp ứng được nhu cầu” người dùng . Ngoài suy nghĩ  nâng cấp hệ thống server thì điều đầu tiên và ít tốn kém nhất” bạn nên nghĩ đến đó CACHE. Cache làm cho ứng dụng của bạn load nhanh hơn do các xử lý trước đó đã được lưu lại và làm cho hệ thống server của bạn chạy nhẹ nhàng hơn . Đó chính là tác dụng và lý do tại sao bạn nên dùng Cache .

Dùng thế nào để hiệu quả ?

 

Dùng cache khi bạn thấy một nội dung nào đó sẽ không thay đổi trong một khoảng thời gian nhất định. Chẳng hạn một bài báo nội dung của nó sẽ không bao giờ thay đổi đến khi nào người biên tập thay đổi nó, hay cấu trúc dữ liệu của một bảng sẽ không thay đổi nếu như bạn không thêm hoặc xóa trường dữ liệu của bảng đó , những dữ liệu này bạn nên cache lại để tăng tốc độ load ứng dụng và giảm xử lý cho hệ thống của bạn.

Có những loại cache nào?

 

  1. 1 – File Cache: Dữ liệu cần Cache được lưu thành File đặt trên hệ thống server của bạn
  2. 2 – Memcache: Dữ liệu cần cache được lưu vào RAM  trên hệ thống server của bạn và được lưu dưới dạng key,value
  3. 3 – APCCache: Apc là một extension của PHP, dữ liệu cache cũng được lưu trên Memory của webserver giống như Memcache
  4. 4 – Wincache: cũng giống như Apc là một extension của PHP nhưng được cài tiến chủ yếu dùng cho Windows và IIS server
  5. 5 – XcacheEngine: Giống APC là một extension của PHP
  6. 6 – RedisEngine: Sử dụng PHPredis extension để kết nối  trong PHP, cơ chế cache giống như Memache nhưng Redis hỗ trợ cả cache trên Memory và File cache . Nếu như với Memcache dữ liệu sẽ bị mất khi server khởi động lại thì với Redis dữ liệu được lưu cả trên ổ cứng khi server chẳng may bị khởi động lại thì sau khi khởi động xong dữ liệu lưu trên redis sẽ được nạp lại vào Memory từ dữ liệu File cache (Redis còn được gọi là một hệ thống persistant Cache) .
Read More
memcached
Memcached sử dụng để làm gì ?
  1. Caching là gì?
    – Caching (Bộ nhớ đệm) được sử dụng vì hai lý do rất quan trọng:
  • để tăng tốc độ trả dữ liệu của các trang và làm giảm bớt tài nguyên hệ thống.
  • Bộ nhớ đệm được sử dụng để tăng tốc độ các trang web động.

– Ví dụ:

  • Bạn hãy hình dung mỗi khi một trang được truy cập, PHP sẽ tạo ra các trang theo yêu cầu trên bay từ cơ sở dữ liệu. Nó cần có thời gian để truy vấn cơ sở dữ liệu để tạo ra các trang. Các truy vấn cơ sở dữ liệu này sẽ sử dụng nhiều các nguồn tài nguyên của máy chủ của bạn.
  • Tuy nhiên, nếu thay vì liên tục tạo ra một trang mới, thì bạn hãy tạo cùng một trang cho mỗi khách truy cập –> như vậy bạn đã biến những trang này vào các tập tin HTML tĩnh?
  • Không có cơ sở dữ liệu truy vấn là cần thiết cho các khách truy cập mới. Một tập tin tĩnh có thể được phục vụ nhanh hơn và tiêu thụ tài nguyên ít hơn đáng kể. Khách truy cập của bạn xem trang được yêu cầu của họ sớm hơn, và bạn tiết kiệm chu kỳ CPU.

2. Memcache là gì ? 
– Memcached cũng là cache giống như các bộ cache trên, nó là 1 service độc lập như mysql.
– Memcached cung cấp cho bạn khả năng lưu trữ đối tượng bất kỳ vào trong RAM.
– Memcached là một NoSQL được thiết kế với hiệu năng cao, hoạt động theo phương thức distrubuted memory object caching.
– Memcached được tích hợp để giảm tải database cho ứng dụng, website và tăng tốc độ truy cập của website.

 

– Request đầu tiên: Sau khi có memcached thì lần đầu tiên của user thường truy cập vào CSDL thì server sẽ trả lại kết quả cho

  • user như thông thường hiện nay và
  • kèm them một việc là trả dữ liệu vào server memcached.

– Các request lần sau:

  • Lúc đó lần sau user truy cập nó sẽ không yêu cầu server làm việc nữa thay vào đó nó sẻ đưa từ server memcached trả lại cho user .
  • việc đó sẽ giúp giảm thiểu 1 lượng lớn công việc mà server cần làm việc. Giúp website của bạn chạy nhanh hơn khoảng 70%

– Để PHP có thể hoạt động với memcached bạn cần cài 1 phần mở rộng để PHP có thể hoạt động với memcached dựa vào các hàm và class mà phần mở rộng đó cung cấp. (VD: phần mở rộng Memcache)
– Như vậy, muốn dùng memcached bạn phải cài memcached và cài memcache extension.
– Hiện nay hầu hết các mã nguồn mở và thương mại đều hỗ trợ memcache.
– Mình sẽ hướng dẫn các bạn cài đặt memcached trên hệ điều hành CentOS 6. Lưu ý với việc cài đặt memcached trên hệ điều hành CentOS 5, chúng ta phải thực hiện build và được hướng dẫn cài đặt ở một bải viết khác.

3. Một vài ưu và nhược điểm:

– Nhược điểm:

  • Memcached ko có cơ chế thẩm định tính chính xác của dữ liệu lưu trong nó. Điều này có thể thấy quá cấu trúc hệ thống (memcached ko có bất cứ sự liên hệ nào với db, mà nằm độc lập).
  • Người ta giải quyết vấn đề này bằng một vài cách nhưng cách mình thấy khả thi nhất là write trực tiếp vào memcached và sau một thời gian thì write những gì có trong memcached vào db. Tuy nhiên việc này cũng có nguy hiểm, ví dụ như khi chưa kịp write từ memcached vào db mà server memcached tèo chẳng hạn.

=> Vì vậy không nên dùng cho những dữ liệu mang tính critical.
– Ưu điểm:

  • Ở mức nhỏ người ta thường dùng memcached để làm nơi lưu trữ dữ liệu chia sẻ, thường là lưu session. Cái này rất tiện lợi nhất là trong các kiểu loadbalancing đơn giản như nginx hay pound, khỏi phải lo tới vấn đề persistence session.
  • Ở mức lớn hơn một chút, người ta dùng memcached để giảm thiểu read từ db, cho những dữ liệu ít thay đổi và cần tính toán, query phức tạp, tốn tài nguyên.
  • Cao hơn nữa, người ta dùng memcached để shard db (chia nhỏ db theo chiều ngang, tức là theo row). Hiệu năng của nó vẫn còn gây tranh cãi khi so sánh với việc partition db.
Read More
circloid-preview-image
Download Circloid – Responsive OpenCart Admin Theme

circloid-preview-image

Circloid là một giao diện reponsive cho trang quản trị admin của Opencart.  Circloid cho phép bạn thay đổi giao diện sao cho phù hợp với phong cách của bạn. Đó là một thiết kế hoàn hảo dựa trên theme mặc định nhưng không ghi đè nên nó. Circloid sử dụng VQmod vì vậy không có gì là ghi đè lên website của bạn. tất cả những gì bạn phải làm là tải lên các tập tin tương ứng và thiết lập chúng.

Vì vậy, bạn luôn có thể quay trở lại giao diện mặc định bất cứ khi nào bạn muốn. Giao diện này được xây dựng trên bootstrap để nó sẽ được hiển thị tuyệt vời kể cả khi bạn đang ở trên thiết bị di động.

 

Phiên bản sử dụng: Từ v1.5.1 đến v1.5.6.4 đều ok hết

 

Một vài hình ảnh demo cho các bạn:


features-616-1
ipad-616-1iphone-616-1

Chú ý: Theme được sưu tầm trên mạng, mình cũng có check sơ qua, nhưng các bạn cũng nên kiểm tra lại lần nữa cho kỹ nhé, cẩn thận vẫn tốt hơn trước khi sử dụng.
Read More
dynamic-text-contactform7-4
[Contact Form 7] Tự lấy giá trị trong bài viết đưa vào form

Câu hỏi: Mình muốn tạo một form đặt hàng đơn giản để đặt vào bài viết và nó tự lấy tên tiêu đề, giá trị custom post field bỏ vào trong form để khách không cần nhập lại. Vậy phải làm thế nào?

Yeah, câu hỏi này mình cũng gặp nhiều lần rồi và điều đầu tiên mình nghĩ ngay đến đó là sử dụng Contact Form 7 vì plugin này dễ tuỳ biến hơn các plugin khác nếu bạn biết một chút về PHP và cấu trúc các hàm cơ bản WordPress. Tuy nhiên giữa lúc mình đang lọ mọ thử một vài đoạn code để làm việc này thì hôm nay đã có email báo có một plugin chuyên để làm việc này vô cùng dễ dàng, đó là Contact Form 7 – Dynamic Text Extension.
Đây không phải là một plugin chạy độc lập mà nó bắt buộc phải có plugin Contact Form 7 chạy cùng nên trước tiên bạn hãy cài plugin này vào trước và đọc qua Hướng dẫn Contact Form 7 nếu bạn chưa biết về nó.

Tạo field với Dynamic Text để lấy giá trị trong bài

Plugin này có thể get được khá nhiều thứ trong bài viết mà nó được chèn vào như Tiêu đề bài, ID của bài, slug, lấy giá trị từ biến $_POST , lấy giá trị custom field và kể cả từng giá trị của người đăng bài. Chỉ nhiêu đó thôi là bạn đã làm được một đống việc rồi nếu bạn có ý tưởng.

Để ứng dụng được plugin này tối đa, mình nghĩ các bạn nên thuộc những tham số của một số function và object quan trọng trong WordPress như bloginfo() , $post , get_post_meta() .

Sau khi cài đủ 2 plugin mình đã nói phía trên, bạn vào phần tạo form sẽ thấy có thêm một tag tên là Dynamic Text fieldDynamic Text Hidden field, chính là em.

dynamic-text-contactform7-1

Các bạn tạo nó như bao field khác, tuy nhiên hãy đặc biệt chú trọng phần Dynamic value, đó là trái tim của plugin này.

dynamic-text-contactform7-2

Tạo dynamic text field

Ở phần Dynamic value này nghĩa là bạn nhập những shortcode được plugin này hỗ trợ để tự động lấy các giá trị mà mình đã nêu ở đầu bài. Điều đầu tiên mà bạn cần nên biết là khi nhập shortcode vào đây, bạn không cần nhập 2 dấu ngoặc vuông bao quanh [] mà nhập thẳng tên shortcode và giá trị. Mình sẽ hướng dẫn phía dưới.

Các shortcode lấy value của Dynamic Text

Lấy giá trị của từng tham số trong hàm bloginfo()

Hàm này được dùng để in ra một số thông tin chính của website, nó không phụ thuộc vào bài viết hiện tại. Để lấy giá trị, bạn sử dụng shortcode như sau:

CF7_bloginfo show='tham số'

Các bạn thay tham số thành tham số muốn lấy.

Danh sách các tham số của bloginfo().

Lấy giá trị từ phương thức GET trong PHP

Ví dụ mình có URL là http://itplusvn.com/contact.php?name=itplusvn

Bây giờ mình muốn đưa giá trị của tham số name trên URL vào (nghĩa là itplusvn) thì mình sẽ có shortcode sau.

CF7_GET key='name'

Thế nó lấy URL này ở đâu thế? Là ở cái URL hiện tại trên trình duyệt chứ ở đâu nữa. 😀

Lấy giá trị từ phương thức POST trong PHP

Ví dụ mình có 2 biến $_POST["name"]  để truyền tên gì đó thì mình sẽ dùng shortcode như sau để lấy giá trị được truyền vào mảng name kia.

CF7_POST key='name'

Lấy giá trị trong bài viết hiện tại

Shortcode này chúng ta có 2 cách dùng, một là dùng key được mặc định bởi Dynamic Text (mình không biết chính xác là có bao nhiêu key) hoặc là dùng tham số trong object $post. Hiện tại nó có những giá trị như sau:

 

Để lấy giá trị, đầu tiên ta phải dùng shortcode CF7_get_post_var key=’key’. Ví dụ, mình sử dụng tham số của object $post để lấy tiêu đề bài viết thì mình sẽ có shortcode là CF7_get_post_var key=’post_title’. Tương tự, bạn thay bằng các tham số trong danh sách mình đã ghi phía trên.

Lấy giá trị từ custom post field của bài hiện tại

Đây là điểm bạn nên chú ý vì mình biết nhiều bạn sẽ cần, ví dụ bạn cần lấy giá tiền của sản phẩm trong trang hiện tại chẳng hạn. Ta sẽ có shortcode như sau:

CF7_get_custom_field key='my_custom_field'

Bạn thay my_custom_field  bằng slug của custom field mà bạn cần get ra nhé.

Lấy địa chỉ website giới thiệu

Địa chỉ website giới thiệu ở đây nghĩa là địa chỉ website ở trang mà khách đã vào trước đó sau đó ấn vào một liên kết nào đó trên trang dẫn tới trang này. Để lấy giá trị này, bạn sử dụng shortcode ngắn gọn như sau mà không cần sửa gì cả.

CF7_referrer

Và đây là hình ảnh hướng dẫn nhập shortcode

dynamic-text-contactform7-3

Chèn shortcode vào Dynamic valueChèn shortcode vào Dynamic value
Ok, bước còn lại bây giờ là copy shortcode trong khung màu nâu bỏ vào Form và copy shortcode màu xanh lá bỏ vào Message body như bình thường. Kết quả ta có…

Lấy giá trị trong bài viết đưa vào formForm tự điền title của bài viết

dynamic-text-contactform7-4
Xong rồi đấy. Nếu bạn chưa hình dung ra tính năng này quan trọng thế nào thì bài tutorial tự làm shop đơn giản trên WordPress mà mình sắp đưa lên sẽ giúp cho bạn có cái nhìn rõ rệt hơn về tính năng này.

 

Nguồn: http://thachpham.com/wordpress/wp-plugin/lay-gia-tri-bai-viet-contact-form-7.html

Read More