Cách làm website đọc truyện bằng WordPress & hướng phát triển

By Cris & Cena | Wordpress

Nov 19

Thế Khương

Bạn đang đọc bài viết trên blog của Thế Khương. Nhấn vào đây để tìm hiểu thêm.

Hôm trước mình có chia sẻ một screenshot về traffic khủng của một trong số những trang web đọc truyện online tại Việt Nam.

Ảnh này thu hút rất nhiều sự quan tâm về cách làm web đọc truyện như thế nào?

Đặc biệt là trên nền tảng WordPress chưa có hướng dẫn & cũng không có theme nào được viết sẵn.

cach-lam-web-doc-truyen-online-1

Thực tế, nhu cầu đọc truyện tranh online trên website để giải trí, thư giãn, phục vụ đam mê rất phổ biến và luôn có sự quan tâm đông đảo từ nhiều đối tượng.

Đặc biệt là các chị em đọc truyện ngôn tình và học sinh trung học.

GỢI Ý

Ưu đãi Special 2.0 có thể giúp bạn dễ dàng bắt đầu hoặc có nhiều kết quả hơn với kiếm tiền online hoặc kinh doanh online.

Bây giờ, mình sẽ hướng dẫn bạn từng bước làm website đọc truyện bằng WordPress đơn giản, dễ dàng cùng một vài định hướng phát triển.

Lưu ý: Hướng dẫn dưới đây sẽ giúp bạn hoàn thiện các tính năng cần có của 1 web đọc truyện. Chứ sẽ không bao gồm:

  • Chỉnh sửa website làm sao cho đẹp: Bạn cần chọn theme theo ý bạn hoặc học sơ qua về css
  • Tính năng nâng cao: Bạn sẽ tự tìm plugin thêm vào, chẳng hạn đăng ký thành viên, cho độc giả đăng bài,…

Video hướng dẫn:

Chuẩn bị hosting và domain

Để làm bất cứ website gì, bạn cần hosting & domain. Dưới đây là 2 tài liệu hướng dẫn:

Các đoạn code cần chèn vào website

2 plugin miễn phí bạn cần cài đặt để bắt đầu làm website truyện là:

Thao tác cài đặt plugin rất đơn giản, nếu chưa biết bạn có thể xem lại video sau.

Kế đến bạn sẽ tick vào những tùy chọn cơ bản cho plugin Custom Post Type UI như video hướng dẫn.

Các đoạn code tiếp theo, bạn sẽ chèn tuần tự vào mục Add Snippet trong plugin PHP code snippets, bao gồm:

Code PHP Snippets Thuộc truyện – Đoạn code này sẽ hiển thị cái input thuộc truyện khi các bạn thêm một chapter cho truyện nào đó.

add_action( 'edit_form_after_title', 'mystoryparrent' );
function mystoryparrent( $post_data = false ) {
$scr = get_current_screen();
$value = "";
if ( $post_data ) {
$t = get_post($post_data);
$a = get_post($t->post_parent);
$value = $a->post_title;
}
if ($scr->id == 'story') {
echo '<label>Thuộc truyện: <input type="text" name="parent" value="'.$value.'" /></label> (Tên của cuốn truyện gốc)<br /><br />';
}
}
///////
add_action( 'save_post', 'save_mystory' );
function save_mystory( $post_id ) {
$story = isset( $_POST['parent'] ) ? get_page_by_title($_POST['parent'], 'OBJECT', 'post') : false ;
if ( ! wp_is_post_revision( $post_id ) && $story ){
remove_action('save_post', 'save_mystory');
$postdata = array(
'ID' => $_POST['ID'],
'post_parent' => $story->ID
);
wp_update_post( $postdata );
add_action('save_post', 'save_mystory');
}
}

cach-lam-web-doc-truyen-online-2

Snippet thuộc truyện giúp hệ thống nhận diện từng chương truyện mà bạn thêm vào sẽ thuộc vào bộ truyện nào.

Điều này tương tự như ý nghĩa của thanh breadcrumb thường thấy ở phía trên bài viết WordPress.

PHP Snippets Show chapters – Đoạn code này giúp cho các bạn hiển thị các chapters của truyện nhé

global $post;
$args = array(
'post_type' => 'story',
'post_status' => 'publish',
'order' => 'ASC',
'post_parent' => $post->ID
);
$story = new WP_Query( $args );
if( $story->have_posts() ) : ?>
<div class="story__main">
<h2 class="story__title-chapter">Danh sách các chương</h2>
<ul class="story__chapter">
<?php
while( $story->have_posts() ) :
$story->the_post();?>
<li>
<a href=<?php echo the_permalink();?>><?php echo get_the_title();?></a>
</li>
<?php endwhile;?>
</ul>
</div>
<?php endif;

cach-lam-web-doc-truyen-online-code-show-chapter

Snippet show chapters có tính năng hiển thị danh sách các chương có trong một bộ truyện mà bạn đăng tải trên website.

PHP Snippets Dropdown – Đoạn code này sẽ giúp cho các bạn hiển thị danh sách các chap của truyện nhé

function get_dropdown_part( $id ) {
global $post, $wpdb;
$query = $wpdb->get_results(sprintf('select * from %s where post_type = \'%s\' and post_parent = %d and post_status = \'%s\' order by post_date asc', $wpdb->posts, 'story', $id, 'publish'));
if ($query) {
echo '<form id="selectpart" class="story__form">
<select name="part" onchange="window.location.href = (this.options[this.selectedIndex].value)">
<option value="">- Chọn tập -</option>'; foreach ( $query as $k ) { $uri = get_permalink($k->ID); if ( ! preg_match('/.*page-[0-9].*/', $uri)) echo '<option value="'.$uri.'">'.$k->post_title .'</option>'; } echo '</select></form>';
}
}

Đoạn code chèn ở file content-single.php hoặc content.php tùy vào theme của bạn dùng, bạn phải tìm trang single để hiển thị tên truyện và dropdown danh sách truyện

<div class="comic--title">
<?php if ( get_post_type() == 'story') {
printf( '<p class="story__title"><a href="%s">%s</a></p>', get_permalink($post->post_parent), get_the_title($post->post_parent));
get_dropdown_part($post->post_parent);
} ?>
</div>

Còn đoạn code dưới đây là dùng để phân trang cho các chapters cho các bạn dễ dàng xem tiếp chapter mới hoặc coi lại chapter cũ. Các bạn có thể chèn đoạn code này vào dưới code code của file single-content.php hoặc content.php tùy vào theme của các bạn nhé.

<div class="story__pagination">
<div class="story__pagination-prev">
<?php
global $post;
$prev_post = get_previous_post($post->ID);
if($prev_post) {
$prev_title = strip_tags(str_replace('"', '', $prev_post->post_title));
echo "\t" . '<a rel="prev" href="' . get_permalink($prev_post->ID) . '" title="' . $prev_title. '"><strong>Chương trước</strong></a>' . "\n";
}?>
</div>
<div class="story__pagination-select">
<?php if ( get_post_type() == 'story') {
get_dropdown_part($post->post_parent);
} ?>
</div>
<div class="story__pagination-next">
<?php
$next_post = get_next_post($post->ID);
if($next_post) {
$next_title = strip_tags(str_replace('"', '', $next_post->post_title));
echo "\t" . '<a rel="next" href="' . get_permalink($next_post->ID) . '" title="' . $next_title. '"><strong>Chương tiếp</strong></a>' . "\n";
}
?>
</div>
</div>

Để cho giao diện trông đẹp hơn thì các bạn đừng quên vào Theme Customize để chèn đoạn code CSS dưới đây vào nhé

.story__chapter {
margin-left: 0;
padding-left: 0;
margin-bottom: 0;
}
.story__chapter li a {
font-size: 22px;
}
.story__title-chapter {
padding-left: 10px;
border-left: 4px solid var(--main);
font-size: 30px;
text-transform: uppercase;
}
.story__chapter li {
margin-bottom: 10px;
}
.story__chapter li a:hover,
.nav-previous a:hover,
.nav-next a:hover{
text-decoration: none;
color: var(--main);
}
.story__title {
text-align: center;
margin-bottom: 15px;
}
.story__title > a {
text-transform: uppercase;
text-decoration: none;
font-weight: bold;
font-size: 25px;
color: var(--main);
}
.story__form {
text-align: center;
}
.story__form select {
font-size: 20px;
padding: 15px;
border: 1px solid #eee;
max-width: 100%;
}
.story__pagination {
display: flex;
justify-content: space-between;
align-items: center;
flex-direction: row;
margin-bottom: 25px;
}
.story__pagination > * {
flex-basis: 33%;
max-width: 33%;
text-align: center;
}
.story__pagination-next > a,
.story__pagination-prev > a {
display: inline-block;
padding: 15px 30px;
background-color: var(--main);
color: white;
border-radius: 50px;
}
.story__pagination-prev > a {
background-color: var(--second);
}
.navigation
.single-post .story__form,
.single-post .story__pagination{
display: none;
}
@media only screen and (max-width: 767px){
.story__pagination {
flex-direction: column;
justify-content: center;
}
.story__pagination > * {
max-width: 100%;
flex-basis: 100%;
margin: 7px 0;
}
}

Đó là tất cả những đoạn code bạn cần lưu lại để chèn vào website cho hoàn chỉnh trang web truyện, về thao tác và vị trí chèn, bạn nên xem kĩ video.

Tiếp tục, mình sẽ nói qua một vài gợi ý về định hướng kiếm tiền từ trang web truyện online.

Định hướng phát triển website đọc truyện

Trang web đọc truyện là một ngách thu hút traffic cực cao nếu bạn phát triển tốt.

Thời gian đầu, nhiệm vụ của bạn là tìm nguồn nội dung truyện mới, hot, được quan tâm nhiều và đăng tải, cập nhật đều đặn lên website.

Để kéo traffic ban đầu vào site, bạn cần cân nhắc sử dụng paid traffic. Vì nếu bạn không chủ động xây dựng cộng đồng fan đầu tiên cho web truyện của bản thân, bạn phải chờ khá lâu để có những organic traffic đầu tiên vào site.

Sử dụng Facebook Ads

Paid traffic phù hợp nhất lúc này để bạn triển khai để thu hút những visitor đầu tiên cho website là Facebook Ads.

Với Facebook Ads, bạn dễ dàng nhắm target đến những đối tượng phù hợp nhất của website đọc truyện dựa vào độ tuổi, giới tính, hoặc sở thích cụ thể.

dinh-huong-phat-trien-website-doc-truyen-1

Bạn có nhiều lựa chọn cho chiến lược kéo traffic bằng Facebook Ads với giá ads rẻ.

Chiến lược ở đây là bạn hãy chạy quảng cáo tới những truyện đang HOT nhất (Chẳng hạn như những truyện ngôn tình mà chị em hay đọc)

Để biết được truyện nào đang hot, bạn có thể vào spy các website truyện khác:

Tổ chức event/ giveaway

Là người có hứng thú và đam mê làm website đọc truyện thì không ai hiểu rõ audience của ngách này ngoài bạn.

Bạn có thể trích chút chi phí, tổ chức các event contest, giveaway và trao giải thưởng.

Thể lệ tham gia nhận giải nên là các hình thức viral mà những fanpage bán hàng hay fanpage cộng đồng áp dụng rất thành công như: tag bạn bè, comment, like, share bài viết về tường ở chế độ public.

Như vậy fanpage của bạn sẽ phát triển rất nhanh, traffic vào website truyện sẽ tăng dần, thời gian lâu dài sẽ mang về lượng organic traffic tốt.

Cách kiếm tiền từ website đọc truyện

Chỉ cần là website có traffic tốt, có nội dung phù hợp ngách website và duy trì phát triển đều đặn thì bạn không sợ không có cách để kiếm tiền từ đó.

Sau đây là những gợi ý về các hình thức kiếm tiền từ trang web đọc truyện mà bạn sở hữu.

Kiếm tiền từ Ads Network

Đây là nguồn thu nhập chính của các website truyện.

Hãy lướt qua các website truyện, họ đều đặt quảng cáo & có được lợi nhuận thông qua lượng click vào quảng cáo hoặc views

Ngoài ra, sẽ có rất nhiều đơn vị muốn đặt quảng cáo trực tiếp lên website của bạn với hình thức thu phí theo tháng, bạn có thể cân nhắc đặt nếu doanh thu mang về cao hơn Ad Network.

Hoặc bạn có thể thu phí của họ thông qua lượng impression (Lượt quảng cáo hiển thị)

Ngoài ra, nếu cộng đồng truyện tranh của bạn lớn mạnh. Bạn có thể kinh doanh những ấn phẩm thương hiệu như áo thun, mũ, hoodie,…

Tạm kết

Bài viết đã đi qua hướng dẫn chi tiết cách tạo website đọc truyện online bằng WordPress rất dễ dàng, bất cứ ai cũng có thể làm được.

Bạn chỉ cần cài đặt website WordPress như bình thường, sử dụng 2 plugin miễn phí và vài đoạn code mà mình chia sẻ trong bài là có thể bắt đầu đăng tải những bộ truyện đầu tiên cho đọc giả theo dõi.

Một vài gợi ý hướng phát triển cho website và định hướng kiếm tiền mà mình đã chia sẻ cũng không khó để thực hiện, nếu bạn yêu thích comic website và muốn tâm huyết kiếm tiền từ nó thì hãy follow theo và thực hành.

Bạn cũng có thể tham khảo cách làm và cách kiếm tiền từ những dạng website WordPress khác tại chuyên mục: Tự học WordPress của Kiemtiencenter.

Có thắc mắc gì hãy để lại bình luận mình sẽ hỗ trợ.

53
bình luận. Để lại câu hỏi & nhận trả lời nhanh qua email.

avatar
mới nhất cũ nhất vote nhiều nhất
tuấn
tuấn

mình có tải và làm theo cái plugin thứ 2 nhưng khác với video clip hướng dẫn và không được, mong có clip hướng dẫn lại cái plugin thứ 2 ạ Insert PHP Code Snippet

tran hieu
tran hieu

đừng xóa comment của mình nha!
cho mình hỏi sao mình chèn đoạn code Thuộc truyện vào như anh hướng dẫn thì web nó ra lỗi
Oops! That page can’t be found.
It looks like nothing was found at this location. Maybe try a search?
làm ơn trả lời giúp mình. thanks

hieu
hieu

Mình đã add cái code vào PHP code snippets nhưng khi vào story để add 1 chương thì nó không hiện ra cái ô thuộc truyện.
còn nếu mình cái plugin khác có chức năng tương tự add code snippets thì báo lỗi ở trang web của mình là Oops! That page can’t be found.
It looks like nothing was found at this location. Maybe try a search?
rất mong anh nhanh chóng hỗ trợ giúp em

NAM
NAM

Mình rất cám ơn bên kiemtiencenter đã có bài viết này, nhưng khi mình tìm plugin thứ 2 thì k có. nên mình đặt câu hỏi là có thể thay thế plugin đó = plugin khác hay k , cám ơn

Nam
Nam

Hây, chúc Thế Khương và kiemtiencenter, 1 năm mới nhiều may mắn sức khỏe và thành công, minh đang quan tâm tới làm 1 web truyện tiên hiệp, nhưng khi cài pulgin thứ 2 như video hướng dẫn thì khi tìm để cài lại không thấy, sau đó xem bài viết thì lại hướng dẫn cài 1 pulgin khác (cái này thì mình tìm được) cho mình hỏi hiện tại nội dung video vẫn còn tham khảo được chứ ?
cám ơn !

Duc
Duc

Có plugin chèn quảng cáo ở giữa các ảnh khi đang đọc không a.

Quang Phương
Quang Phương

em nghĩ đoạn add code vào file content-single.php có vấn đề, trong video bác đã giải thích khác so với lúc bác làm lần đầu khi add vào theme type. của e nó không hiện danh sách chương, cũng không hiện nút chương trước, sau. dưới bài post chỉ có một đoạn mã được hiển thị. if($prev_post) { $prev_title = strip_tags(str_replace(‘”‘, ”, $prev_post->post_title)); echo “\t” . ‘ID) . ‘” title=”‘ . $prev_title. ‘”>Chương trước’ . “\n”; }?> post_parent); } ?> ID); if($next_post) { $next_title = strip_tags(str_replace(‘”‘, ”, $next_post->post_title)); echo “\t” . ‘ID) . ‘” title=”‘ . $next_title. ‘”>Chương tiếp’ .… Đọc thêm »

Quang Phương
Quang Phương

bác kiểm tra lại code hộ e với, e so sánh code với trong video khác nhau, làm thử thì bị lỗi ạ, thank bác.

Quang Phương
Quang Phương

xin hỏi, mình muốn làm web truyện, nhưng là truyện tranh, việc up một lượng lớn ảnh lên như vậy thì có cách giải quyết như thế nào ạ?

Phạm Văn Khương
Phạm Văn Khương

Bạn cho hỏi: Trong một bài viết dài, có nhiều Subheading, mình muốn tạo một mục lục cho bài viết đó với các đường link phía trên liên kết với môt Subheading trong chính bài viết đó thì làm thế nào? Mình đang làm website bằng WordPress .
Cảm ơn bạn!