Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pronamic Post Expiration #1

Open
remcotolsma opened this issue Oct 22, 2024 · 3 comments
Open

Pronamic Post Expiration #1

remcotolsma opened this issue Oct 22, 2024 · 3 comments
Assignees

Comments

@remcotolsma
Copy link
Member

remcotolsma commented Oct 22, 2024

We hebben verschillende WordPress oplossingen die een 'post expiration' functionaliteit hebben ingebouwd:

Binnen de volgende issues speelt dit ook:

Binnen schema.org is expires ook een eigenschap:

Het lijkt mij handig om hier een eenvoudige bibliotheek voor neer te zetten. De basis is volgens mij altijd dat er in een post meta veld een verloopdatum staat. Op die datum moet de post_status gewijzigd worden van publish naar expired (of passed).

Ik dacht aan een bibliotheek die met het volgende overweg zou kunnen:

\register_post_type(
	'pronamic_event',
	[
		…
		'supports' => [
			'title',
			'expiration' => [
				'meta_key'    => '_pronamic_event_end_date',
				'post_status' => 'passed',
				'date_format' => 'Y-m-d H:i:s',
			],
		],
		…
	]
);

A feature can also be specified as an array of arguments to provide additional information about supporting that feature.
Example: array( 'my_feature', array( 'field' => 'value' ) ).

https://developer.wordpress.org/reference/functions/register_post_type/

Het laten verlopen van de posts kunnen we met https://actionscheduler.org/ regelen.

Ik kwam nog de volgende plugin tegen:

@remcotolsma remcotolsma self-assigned this Oct 22, 2024
@remcotolsma
Copy link
Member Author

Reüel wees me nog op het volgende support ticket: https://secure.helpscout.net/conversation/2715178294/27748/#thread-8187956746. Hier wilde regiecentrumbv.nl ook vacatures op vervaldatum automatisch laten verdwijnen. Hier is de volgende plugin ingezet als oplossing: https://nl.wordpress.org/plugins/post-expirator/. Aandachtspunt is ook de dat de post_status aangeeft of het bericht nog wel publiekelijk beschikbaar is:

\register_post_status(
'expired',
[
'label' => \__( 'Expired', 'pronamic-post-expiration' ),
/* translators: %s: count value */
'label_count' => \_n_noop( 'Expired <span class="count">(%s)</span>', 'Expired <span class="count">(%s)</span>', 'pronamic-post-expiration' ),
'exclude_from_search' => false,
'public' => true,
'show_in_admin_all_list' => true,
'show_in_admin_status_list' => true,
]
);

De huidige expired post status moet waarschijnlijk ook voorzien worden van een prefix. We willen niet dat een bestaande expired post status met public op false in één keer op public = true komt te staan.

@remcotolsma
Copy link
Member Author

@rvdsteege
Copy link
Member

We hadden deze al eens besproken op de werkvloer, maar hij stond nog op m'n lijstje. Mooie cleane plugin met genoeg mogelijkheden, precies wat ik nodig had gehad voor de vacatures 🙂

Ik heb een coding standards issue opgelost en een kleine aanpassing voorgesteld in #3.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants