Warning: call_user_func_array() expects parameter 1 to be a valid callback, function 'new_excerpt_more' not found or invalid function name in /srv/disk1/3146945/www/tamimbd.cf/wp-includes/class-wp-hook.php on line 287
Wordpress Wordpress Themes

ওয়ার্ডপ্রেস কাস্টম পেইজ টেমপ্লেট তৈরি

ওয়ার্ডপ্রেসের কিছু কিছু থিমে অনেক পেইজের জন্য অনেক গুলো টেমপ্লেট থাকে। আবার কিছু কিছু থিমের জন্য  কোন টেমপ্লেটই থাকে না। মাঝে মাঝে ডিফল্ট টেমপ্লেট দিয়ে কাজ হয় না। তার জন্য দরকার হয় নিজের মত করে পেইজ টেমপ্লেট তৈরি করে নেওয়া। নিজের মত করে  কাস্টম পেইজ টেমপ্লেট তৈরি করা সহজ। তার জন্য থিম ফোল্ডারে একটি নতুন পিএইচপি ফাইল যুক্ত করতে হবে। যেমন ধরি page-location.php । যে কোন নামই দেওয়া যাবে।  এর পরের কাজ হচ্ছে পেইজ টেমপ্লেটটি একটি নাম দেওয়া। যে কোন নামই দেওয়া যাবে। আর তা আমাদের তৈরি করা পিএইচপি ফাইলে যুক্ত করে দিতে হবে নিচের মত করেঃ
1
2
3
<?php
/* Template Name: Location */
?>
এখন যদি আমরা কোন পেইজ যুক্ত করতে যাই, তাহলে আমদের তৈরি করা Location টেমপ্লেট দেখতে পাব। এবং এটাকে পেইজ টেমপ্লেট হিসেবে ব্যবহারও করতে পারব। page template selection আমাদের পেইজ টেমপ্লেটটি এখন কোন পেইজে ব্যবহার করে তা দেখলে কিছুই দেখাবে না। কারণ আমরা কিছুই পেইজ টেমপ্লেটটিতে দেখানোর জন্য কোন কোড লিখি নি। আমরা এখন শুধু Hello World দেখাবো আমাদের পেইজ টেমপ্লেটে। তার জন্য লিখবঃ
1
2
3
4
<?php
/* Template Name: Location */
?>
<h1>Hello world!</h1>
এখন যদি যে পেইজে আমাদের পেইজ টেমপ্লেট ব্যবহার করেছি, তা ভিজিট করি, তাহলে শুধু Hello World দেখাবে। স্ট্যাটিক একটা লেখা। আমরা চাচ্ছি পেইজে যে লেখাটা লিখব, তা দেখাতে। তার জন্য লিখব এভাবেঃ
1
2
3
4
5
6
7
8
9
<?php /* Template Name: Location */ ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h1><?php the_title(); ?></h1>
<?php the_content(); ?>
<?php endwhile; endif; ?>
এখন আমরা পেইজের ভেতরের কন্টেন্ট গুলো আমাদের টেমপ্লেটে দেখাতে পাবো।পেইজ টেমপ্লেট তৈরি করেছি, পেইজ থেকে লেখা গুলোও দেখাতে পেরেছি। কিন্তু লেখা গুলোতে কোন স্টাইল নেই। স্টাইল বা অন্যান্য কোড গুলো লেখা থাকে header.php তে। স্ক্রিপ্ট বা অন্যান্য কিছু লেখা থাকে footer.php তে। আমরা header.php এবং footer.php আমাদের টেমপ্লেট ফাইলে যুক্ত করে দিব। তাহলে আমাদের থিমের ডিজাইন অনুযায়ী আমাদের পেইজ টেমপ্লেটে কন্টেন্ট দেখাবে। বা ইচ্ছে করে css ফাইলে প্রয়োজনীয় css কোড লিখেও আমাদের পেইজ টেমপ্লেটকে নিজের মত করে সাজিয়ে নিতে পারি।
1
2
3
4
5
6
7
8
9
10
11
12
<?php /* Template Name: Location */ ?>
<?php get_header(); ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h1><?php the_title(); ?></h1>
<?php the_content(); ?>
<?php endwhile; endif; ?>
<?php get_footer(); ?>
আমাদের পেইজ টেমপ্লেটে যদি পেইজ কন্টেন্ট ছাড়া অন্য কোন ক্যাটেগরি থেকে পোস্ট লিস্ট দেখাতে চাই, তাহলে পেইজ টেমপ্লেটে পোস্ট কোয়েরি করে তা দেখাতে পারি। তার জন্য লিখতে পারি এভাবেঃ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
/* Template Name: Location */
?>
<?php get_header(); ?>
<?php // The Query
    $args = array( 'posts_per_page' => 10 );
    query_posts( $args );
    // The Loop
    while ( have_posts() ) : the_post();
 ?>
// showing post title.
<h1><?php the_title(); ?></h1>
// showing post content
<?php the_content(); ?>
<?php endwhile; // Reset Query wp_reset_query(); ?>
<?php get_footer(); ?>
উপরের কোড গুলোতে কোন স্টাইল ব্যবহার করা হয় নি। HTML এবং CSS জ্ঞান ব্যবহার করে নিজের ইচ্ছে মত করে পোস্ট গুলো কিভাবে দেখাবে, তা সাজিয়ে নেওয়া যাবে।পোস্ট কোয়েরিতে পোস্টের ফিচার ইমেজ দেখানোর জন্য লিখতে পারিঃ
1
<?php echo get_the_post_thumbnail( $page->ID, 'thumbnail' ); ?>
পেইজের নিজস্ব ফিচার ইমেজ দেখানোর জন্য লিখতে পারিঃ
1
2
3
4
5
6
7
8
<?php
if ( has_post_thumbnail() ) {
    the_post_thumbnail();
}
else {
    echo '<img src="' . get_bloginfo( 'stylesheet_directory' ) . '/images/default.jpg" />';
}
?>
এখানে পেইজের ফিচার ইমেজ যদি না পেয়ে থাকে, তাহলে ডিফল্ট একটা ইমেজ দেখাবে। ডিফল্ট ইমেজটির url টি default.jpg এর জাগায় লিখে দিলেই হবে। 

Leave a Reply

You Must be Login or Register to Submit Comment.