Increasing article visibility in home page & archive page

Dear developers,

I have mid level php and advanced level html knowledge. I am working on some codings that will help to increase visibility of article in home and archive pages.

Basically, I want to display all volumes and issues on home page as below. Files to be modified:
templates/issue/view.tpl
templates/issue/issue.tpl
templates/issue/archive.tpl

expanded

Note1: If we can set how many volumes or issues to be displayed in home page, it would be better. (in the bottom of home page it will be displayed page iterator, in each page there will be certain number of issues or volumes)
Notes2: Plus button is show/hide for article abstract. I already successfully did it by myself. So just ignore it.

I found two related topics:

journal.tpl

{if $issue && $currentJournal->getSetting(‘publishingMode’) != $smarty.const.PUBLISHING_MODE_NONE}
{* Display the table of contents or cover page of the current issue. *}


<‘h3>{$issue->getIssueIdentification()|strip_unsafe_html|nl2br}</h3’>
{include file=“issue/view.tpl”}
{/if}

Can you specify OJS version you a using?

I am using ojs 2.7.4. Can you help us to do it, if you have coding knowledge.
I guess we need to add some codes to index handler and issue handler in pages folder. Then, we need add codes into journal.tpl.

Hi @ihlasnobatovich,

Double-check your version – there’s no such thing as OJS 2.7.4.

Regards,
Alec Smecher
Public Knowledge Project Team

sorry it was typo, my version is 2.4.7

Hi @ihlasnobatovich,

You’ll have to learn a bit about how OJS’s PHP code fetches issues and articles and uses the Smarty template manager to provide them to the Smarty templates for display. Currently the templates that show table of contents aren’t coded with the intention of showing more than one issue at a time, and the controller code that sets up those templates doesn’t fetch more than a single issue from the database. You’ll need to extend the controller code to fetch the full set of issues/articles, then provide them to the template manager, then format them for display in the .tpl files.

Start with pages/index/IndexHandler.inc.php, which handles requests for the homepage. You’ll see it delegates to pages/issue/IssueHandler.inc.php using the _setupIssueTemplate function.

Regards,
Alec Smecher
Public Knowledge Project Team