User:The Transhumanist/Sandbox/Portal design objectives

This page covers automation level 1, that is, once a template is substituted on a page and saved, everything works. Automation level 2 would be a program that asks for the name of the portal (or portals) to be created, and places the template automatically. Automation level 3 would be a program that figures out what subjects need to be covered and makes the portals for those, without asking (or optionally, asks for confirmation first). Also needed is a portal configuration tool, that provides an interface for easily changing the portal's various parameters section-by-section.

One of the main design objectives is to create a one-page portal, with no portal subpages. This model accomplishes that.

Another design objective is to make a portal page that is fully automated, meaning it is complete and operational once the generating template has been substituted onto the page, using "subst:". This has yet to be fully achieved, and is covered component-by-component, below.

checkY Automated indicates the component is fully automated.

A ☒N indicates that the component still needs design/programming work.

Approach

Develop a simple "complete portal" model

Concentrate on the minimum required components needed for a "complete" portal. These are referred to below as "core components". Then the creation of new portals can be automated to fill in awkward gaps. Of the 7 core components presented, the intro, category section, and Associated Wikimedia sections are sufficiently automated. That leaves the following four sections that need further development before "complete" portals can be created conveniently:

  1. Selected articles
  2. Picture slideshow
  3. In the news
  4. Did you know

Other components can be added to the model, and to specific portals, later.

Develop an extended portal model to encompass existing portals

For conversion of existing portals, we need to go a few steps further, and automate the remaining components found in most of those, which are presented in the #Optional & possible future automated components section below.

Build a portal tool

To simplify maintaining and improving portals, a tool (user script) can be created to make adding new sections to portals easier, as well as for managing the sections already there. It might do things like:

  • Add a new section
  • Add a source to a "selected" section
  • Add an article to a "selected" section
  • Add a picture to a "Random slideshow" section
  • Etc.

Design objectives: automated core components

{{Portal description}} – add a standard short description  Y Automated

{{Portals browsebar}} – present navigation bar with links for browsing portals by subject  Y Automated Looks like this:

Introduction  Y Automated

Automatically insert a transclusion of an excerpt from the corresponding lead article.

This is done automatically using {{Transclude lead excerpt}}, with some parameters preset, like this:

{{Transclude lead excerpt| {{PAGENAME}} | paragraphs=1-3 | files=1,2 | more=}}

It catches most images, but misses some in infoboxes. Good enough for now. Report missed pictures as you come across them.

Selected general article  N Semi-automated

Develop/install method to automatically add pagenames as parameters to {{Transclude random excerpt}} here. A user script or bot could be created to do this. Perhaps JL-bot could be modified to do this (as it does something similar already).

The user script could insert the same data as the bot, but also insert the code for the bot to work off of. That way, you don't have a blank section while waiting for the bot's next run.

Good results might be obtainable in well-controlled batches using {{Transclude linked excerpt}} with a navigation template name, but automatically supplying such as the page parameter in general is problematic, as template titles are not standardized. The code might look like this:

{{Transclude linked excerpt|1=Template:{{PAGENAME}}}}

Another development on its way is present excerpts in slideshow fashion, using {{Transclude excerpts as random slideshow}}.

Did you know?  Y Automated  N needs improvement

Automate "Did you know?" display of DYK blurbs here. Automate news item display with {{Transclude selected recent additions}}

The code used:

{{Transclude selected recent events | {{PAGENAME}} }}

In the news  Y Automated
 N needs improvement

Objective: Automate news item display with {{Transclude selected current events}}

The code used for this:

{{Transclude selected current events | {{PAGENAME}} | days=60 }}

News coverage is scant for many subjects, with news reports few and far between. New news sources needed.

Picture slideshow  N Semi-automated

Apply {{Random slideshow}}

Categories  Y Automated

Place corresponding category tree

Uses this code: {{#tag:categorytree|{{PAGENAME}}}}

Associated Wikimedia  Y Automated

Provide links to the portal's subject in sister projects using {{Wikimedia for portals}}
It looks like this:

The following Wikimedia Foundation sister projects provide more on this subject:

Portals footer bar (directly above)  Y Automated

Purge server cache


Optional & possible future automated components

Selected item  N Semi-automated

Develop template to insert a section for a relevant selected item, including section title.

For example, Portal:Dogs may have a section entitle "Selected dog breed".

Get involved  N Manual

Develop a way to automatically list the subject's WikiProject and other behind-the-scences links

Topics  N Semi-automated

Develop a way to automatically generate a topic list here. We've been using topic navigation templates, but those vary in availability (some topics have them, and the rest don't). They also vary in quality, and in completeness.

In the meantime, perhaps a way could be developed to automatically insert the relevant navigation footer template, rather than manually copy and paste its template name; keep in mind that they do not follow a standard naming convention.

Quality content  N Pending

Apply {{User:JL-Bot/Project content}} to display quality content (featured articles, good articles, featured picutures)

The problem with this is that we don't want the template placed for portals that don't have JL-Bot support.

So, we need:

  1. to find a way to add the code only for those subjects that have JL-Bot support (the subject has a "WikiProject" template), or...
  2. to look for other alternatives.

Develop a way to automatically gather and place the related portal names and their icons here.

So far, we have the semi-automated {{Related portals2}}, that needs just the subject names as parameters, and does the rest automatically.


Design objectives, by layout component

Box-header