Tạo mẫu trang blog tùy chỉnh đúng cách


8

Tôi muốn tạo một mẫu trang tùy chỉnh mới để trình bày các bài đăng trên blog. Tôi nhận ra rằng khi bạn chỉ định một trang để hiển thị các bài đăng qua Cài đặt> Đọc , thì nó sẽ chỉ định home.php để hiển thị nội dung trang đó - là các bài đăng trên một trang. Ngoài ra, tùy chọn gán mẫu trang trong chế độ xem chỉnh sửa trang sẽ biến mất.

Ngay bây giờ nó sẽ hiển thị một bài viết mặc định bằng cách xem bài viết. Tôi muốn cung cấp một tùy chọn khác cho quản trị viên để chọn một mẫu khác có thể tạo kiểu cho các blog theo bố cục gird hoặc nề. Tôi không chắc làm thế nào để làm điều này.

Tôi có thể làm điều đó bằng cách không chỉ định trang hiển thị blog trong Cài đặt> Đọc quản trị viên và sau đó cho phép người dùng quản trị chỉ định mẫu cụ thể cho trang bằng trình đơn Thuộc tính trang trong chỉnh sửa trang nhưng theo https://make.wordpress.org / Themes / 2014/06/28 / xử lý chính xác-tĩnh-front-page-và-custom-blog-post-index-template / , đây là cách SAU .

Tôi đã thử tìm kiếm các giải pháp của google nhưng tất cả những gì tôi tìm thấy là các đề xuất cho các plugin sử dụng. Ai đó có thể chỉ cho tôi một số tài nguyên hữu ích?


Tôi đoán vấn đề ban đầu đã được giải quyết từ lâu nhưng tôi chỉ muốn nói rằng việc đọc qua mã nguồn của plugin đã dạy tôi rất nhiều. Nếu bạn có thể tìm thấy một plugin trên thư mục WP.org, bạn có thể nhấp vào tab nhà phát triển để xem mã trực tiếp từ trình duyệt và xem cách thực hiện.
rtpHarry

Câu trả lời:


7

Đừng quên rằng Wordpress chủ yếu được thiết kế để trở thành một CMS viết blog, vì vậy khi phát triển chủ đề, các nhà phát triển thường chọn cách tiếp cận không chuẩn để đổi lấy tiềm năng cho nhiều tính năng hơn.

Các nhà phát triển chủ đề có ba tùy chọn khi họ tiếp cận điều này, một trong số đó (# 2 bên dưới) mà bạn đã đề cập.

  1. Trực tiếp chỉnh sửa index.phpđể sửa đổi chỉ mục blog. Đây không phải là một lựa chọn tốt vì index.phpsẽ là một dự phòng trong trường hợp một phần khác của mẫu của bạn bị thiếu.

    • Ưu điểm: nhanh chóng và dễ dàng
    • Nhược điểm: dễ bị lỗi và chống lại các nguyên tắc hướng đối tượng
  2. Tạo một mẫu trang cho chỉ mục blog. Giống như bạn đã nói, nhiều nhà phát triển chủ đề chọn đi theo con đường này bởi vì đó là cách nhanh chóng giúp bạn kiểm soát chỉ mục blog và nó thực sự mang đến cho bạn khả năng chơi xung quanh với các mẫu chỉ mục blog khác nhau (rất hữu ích khi phát triển một chủ đề đa năng ).

    • Ưu điểm: Đa năng, cho phép xây dựng một chủ đề mạnh mẽ
    • Nhược điểm: bạn mất khả năng gọi chức năng gốc của Wordpress liên quan đến chỉ mục blog.
  3. Tạo một front-page.php, home.phpindex.phptrong chủ đề của bạn. Các front-pagesẽ là trang chủ cho các chủ đề. homesẽ mặc định cho chỉ mục blog của bạn và indexsẽ là dự phòng của bạn cho tất cả các mẫu.

    • Ưu điểm: Làm sạch và sử dụng đầy đủ các đối tượng và phương thức gốc của Wordpress
    • Nhược điểm: Được giới hạn bởi Wordpress: không lý tưởng cho nhiều loại chủ đề phong phú tùy chọn mà bạn thấy ngày nay

Cá nhân tôi thích đi với số 2, vì hầu hết các dự án phát triển Wordpress của tôi ngày nay không chỉ là blog: chúng là toàn bộ các trang web có kiến ​​trúc thông tin sâu sắc và tính tương tác phức tạp.



0

Đi để bao gồm một số cơ sở trong câu trả lời của tôi. :)

Nếu bạn đang tạo chủ đề của riêng mình và muốn thay đổi cách trình bày mặc định của một số loại trang (ví dụ: trang lưu trữ danh mục hoặc một trang bài đăng blog), thì hãy xem sơ đồ phân cấp mẫu WordPress . Nó cho thấy các tập tin trong thư mục chủ đề của bạn được sử dụng để hiển thị các loại bài đăng.

Bằng cách có một tệp php trong chủ đề của bạn khớp với một tệp trong cấu trúc phân cấp đó, nó sẽ được WordPress sử dụng tự động, chẳng hạn như single.phpđể hiển thị một bài đăng. Nếu bạn đã có một chủ đề với tệp đó, thì rõ ràng bạn có thể thay đổi tệp và nó sẽ được phản ánh trên trang web.

Một cách riêng biệt, nếu bạn muốn có các mẫu trang tùy chỉnh nhưng chỉ muốn quản trị viên có thể thay đổi chúng (trên cơ sở từng bài), thì bạn cần thực hiện một số kiểm tra về vai trò và khả năng; câu trả lời StackExchange này có thể hữu ích. (Bạn vẫn cần tạo các mẫu trang tùy chỉnh đó, xem bài viết trên Tạp chí Smashing này ).

Mặt khác, nếu bạn muốn quản trị viên chọn toàn bộ mẫu trang / bài đăng trên toàn cầu dựa trên một số tiêu chí nhất định hoặc để chọn mẫu trang tùy chỉnh cho toàn bộ trang web, thì bạn sẽ cần thêm tùy chọn khu vực quản trị viên cho chủ đề của mình và một số tùy chỉnh mã trong chủ đề của bạn để hiển thị trang bên phải dựa trên tùy chọn đó. Việc thêm một tùy chọn vào khu vực quản trị được thực hiện dễ dàng với một trong nhiều plugin nhưng cũng có thể được thực hiện bằng tay (xem, ví dụ, bài viết này trên SitePoint ).


1
Cảm ơn câu trả lời của bạn. Tôi biết cách tạo mẫu trang cho trang / bài đăng dựa trên người thừa kế nhưng tôi không thể tìm ra cách cung cấp tùy chọn mẫu cho "Trang chỉ mục bài viết blog" đang sử dụng home.php (sử dụng thuật ngữ tương tự như sơ đồ bạn đã cung cấp). Điều này được đặt khi người dùng quản trị chọn một trang để hiển thị các bài đăng trong Bảng điều khiển> Cài đặt> Đọc. Điều đó sau đó gán trang home.php / index.php. Tôi không thể tìm ra cách tạo mẫu thay thế mà không chỉ định trang trong Bảng điều khiển> Cài đặt> Đọc.
Ryan Coolwebs

@RyanCoolwebs Có lẽ bạn cần thêm tùy chọn quản trị viên vào chủ đề cho phép lựa chọn giữa các kiểu hiển thị cho trang chỉ mục bài đăng blog, sau đó chỉnh sửa home.php để đọc giá trị của tùy chọn và hiển thị biến thể trang phù hợp.
iarcharama

Vâng, tôi nghĩ rằng sử dụng tính năng tùy biến có lẽ là cách tốt nhất để thực sự làm điều này. Tôi có thể kiểm tra các tùy chọn tùy biến và sau đó lấy phần mẫu thích hợp.
Ryan Coolwebs

0

Ok, bạn có nghĩa là bạn muốn tạo trang mẫu của riêng bạn để hiển thị các bài đăng trên blog, phải không?

Sau đó, đi theo cách này tạo một tập tin php có tên blog-template.php

Bên trong tập tin đó đặt mã này lên trên tất cả mọi thứ.

<?php 
/*
* Template Name: Blog Post
*/
?>

Sau đó, bên dưới mã đã cho, đặt tất cả mã của bạn từ index.php/home.phptrang này sang trang bên trên, lưu tệp và bây giờ tạo một trang từ dashboard, giả sử tên của trang đó là "Blog"Bây giờ từ bên phải chose page templatemà chúng ta vừa tạo Blog Posttừ mẫu thả xuống đó .

Xuất bản trang và bạn tốt để có trang riêng của bạn để hiển thị bài viết của bạn.

Hãy cho tôi biết nếu có điều gì khác cần thiết.


OK, vì vậy bạn vừa từ chối giải pháp mà OP tuyên bố là sai;) Tạo mẫu trang và sử dụng nó làm chỉ mục blog không phải là cách tiếp cận tốt nhất, tôi đoán vậy.
Krzysiek Dróżdż

Điều đó không thực sự sai, chỉ là OP đã hiểu sai tại sao mọi người có xu hướng làm theo cách này
Orun
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.