Làm cách nào để nối tiêu đề trang web vào tất cả các trang trừ trang đầu?


8

Trong Cấu hình toàn cầu Joomla 2.5 trong SEO, có tùy chọn "Bao gồm tên trang web trong tiêu đề trang", với các tùy chọn "Sau", "Trước" hoặc "Không". Tuy nhiên, làm thế nào để bạn bao gồm tên trang web ("Sau") trên tất cả các trang trừ trang đầu? (Và có lẽ cho các trang khác là tốt?)

Đây là trên Joomla 2.5, tuy nhiên, tôi cũng muốn biết liệu quy trình có khác gì trong Joomla 3 không.

Chức năng cốt lõi hoặc giải pháp mã thủ công được ưa thích. Tuy nhiên, nếu có các tiện ích mở rộng phù hợp cung cấp chức năng này thì xin vui lòng đề xuất những tiện ích này.


1
Tôi không biết chắc chắn, nhưng tôi nghi ngờ câu trả lời là bạn không thể không có tiện ích mở rộng (hoặc sửa đổi mẫu). Tôi tò mò muốn biết câu trả lời cho mình :)
Brian Peat

Câu trả lời:


7

Để đặt tiêu đề của frontpage khác với tiêu đề của các trang khác, hãy thêm đoạn mã sau vào tệp index.php mẫu vào cuối thông tin đầu.

$menu = $app->getMenu();
    if ($menu->getActive() == $menu->getDefault()) {
    $this->setTitle( 'Whatever You Want Title' );
    }

Mã này sẽ đặt tiêu đề frontpage độc ​​lập với cách Joomla đặt phần còn lại của các trang. Điều này hoạt động trên Joomla 2.5 và tôi tin rằng nó cũng sẽ hoạt động trong loạt 3.x.


Cảm ơn, đây thực sự là phương pháp tôi đã sử dụng - hoạt động tốt.
MrWhite

4

RS SEO có thể làm điều này ra khỏi hộp. Trong cấu hình bạn thiết lập cách bạn muốn thêm tiêu đề trang web, sau đó bạn có thể chỉnh sửa bất kỳ trang nào bạn muốn sau khi nó được thêm vào. Điều này đặc biệt quan trọng đối với các trang có tiêu đề dài sẽ quá dài nếu bạn thêm tên trang web vào tiêu đề.


3

Bốn tùy chọn ở đây: A) sử dụng nguồn gốc của Joomla trước, sau hoặc không. Sau đó đi vào mục menu nhà của bạn và thêm một tiêu đề trình duyệt. Nó sẽ VẪN sử dụng trước, sau hoặc không, nhưng ít nhất bạn có được một tên tùy chỉnh từ nó. Vì vậy, nó sẽ trông như:

Cung cấp dịch vụ cho 100 năm - Tên công ty

B) Thêm mã này bên dưới thẻ cơ thể mở của bạn:

 <?php 
 $app = JFactory::getApplication();
 $this->setTitle($this->getTitle().' | '.$app->getCfg('sitename'));
 ?>

Điều này cung cấp cho bạn tùy chọn sử dụng ngắt ống thay vì dấu gạch ngang hoặc một số ký tự khác bạn chọn. Bạn cũng có thể thay vì sử dụng tên ngồi, có thể đặt một cái gì đó khác vào đó và gắn nó vào tất cả các tiêu đề trình duyệt.

Cung cấp dịch vụ cho 100 năm | Tên công ty

C) Đặt Joomla của bạn thành không. Viết thủ công tất cả các tiêu đề trình duyệt mục menu. Không kinh khủng cho các trang web nhỏ hơn. Thực sự khủng khiếp cho các trang web lớn hơn.

D) Tôi đã không thử điều này, nhưng tôi nghĩ nó sẽ hoạt động. Trong lý thuyết nào. Thêm một id vào trang chủ của bạn.

Điều này vượt lên trên các loại tài liệu:

<?php
  $app = JFactory::getApplication();
  $menu = $app->getMenu()->getActive();
  $pageclass = '';

  if (is_object($menu))
    $pageclass = $menu->params->get('pageclass_sfx');
?>

Và điều này thay thế cơ thể

<body id="<?php echo $pageclass ? htmlspecialchars($pageclass) : 'default'; ?>">

Bây giờ thêm một lớp vào mục menu của bạn. Nó sẽ hiển thị dưới dạng ID cơ thể. NGAY BÂY GIỜ, sử dụng mã được cung cấp trong tùy chọn D và ném một hàm php xung quanh nó để ngăn nó chạy trên ID cơ thể của trang chủ của bạn (xin lỗi tôi không biết cách viết php hoặc tôi sẽ làm điều đó cho bạn), sau đó điền tiêu đề trình duyệt vào mục menu nhà của bạn. Mọi thứ khác sẽ được thêm tên trang web của bạn, nhưng trang chủ.


Cảm ơn tất cả những lời đề nghị. Thành thật mà nói tôi không chắc làm thế nào Dsẽ làm việc? Tôi có thể thấy rằng điều này có thể được sử dụng để thay đổi tiêu đề trong trang bằng CSS, nhưng tôi thực sự cần phải ghi vào TITLEphần tử. Cuối cùng, tôi đã kết thúc bằng cách sử dụng kết hợp giữa các đề xuất của bạn BDtrước tiên để kiểm tra xem menu hiện đang hoạt động có phải là "mặc định" không (ví dụ: chúng tôi đang ở trang trước) và sau đó gọi setTitle()để ghi đè tiêu đề theo cách thủ công cho mặt trước trang.
MrWhite

Ý tôi là sử dụng id làm thành phần trong câu lệnh php có nội dung "nếu phần thân này có id này, đừng bao gồm mã này có thêm tiêu đề trang web". Nhưng này, nếu những lùm xùm của tôi cho bạn một ý tưởng, hãy chạy theo nó!
Faye

3

Tôi đã tạo một mô-đun mà bạn có thể gán cho bất kỳ trang nào và ghi đè tiêu đề và mô tả meta (Thực ra là để thêm mã tùy chỉnh vào một trang web và mã bổ sung vào đầu trang nhưng nó cũng thực hiện điều này).

http://extensions.j Joomla.org/extensions/core-enhancements/coding-a-scripts-integration/custom-code-in-modules/17842

Đặt cấu hình toàn cầu theo cách bạn muốn hầu hết trang web và sau đó sử dụng mô-đun để nhắm mục tiêu các trang cụ thể.


1

Theo tôi biết, không có tùy chọn như vậy cho các trang riêng lẻ.

Tôi chưa bao giờ thử điều này trên lõi j Joomla, nhưng trước đây tôi đã sử dụng một plugin có tên "Trình tạo SEO ", có các tùy chọn để tùy chỉnh tiêu đề trang bằng cách thêm tên trang web (tương tự như tùy chọn lõi j Joomla), thêm một số cài đặt cho một tiêu đề trang trước tùy chỉnh.

Nhưng nếu bạn muốn làm tương tự cho nhiều trang hơn, plugin này sẽ không làm điều đó, trừ khi bạn sửa đổi mã của nó và làm cho nó kiểm tra các mục menu cụ thể theo id mà bạn muốn áp dụng tên trang web bổ sung.

Có thể có các tiện ích mở rộng khác có thể cung cấp cho quản trị viên các mục menu mà bạn muốn có các cài đặt đặc biệt liên quan đến tiêu đề trang, nhưng tôi không biết đặt tên nào.

Tất nhiên, luôn có cách thủ công để bạn có thể viết tiêu đề mong muốn cho mỗi trang.

Tuy nhiên, SEO liên quan, sử dụng tên trang web trong tất cả các trang này, không phải lúc nào cũng là ý tưởng tốt nhất.

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.