File Editor
Directories:
.. (Back)
Files:
20171228151840_WpYoastIndexable.php
20171228151841_WpYoastPrimaryTerm.php
20190529075038_WpYoastDropIndexableMetaTableIfExists.php
20191011111109_WpYoastIndexableHierarchy.php
20200408101900_AddCollationToTables.php
20200420073606_AddColumnsToIndexables.php
20200428123747_BreadcrumbTitleAndHierarchyReset.php
20200428194858_ExpandIndexableColumnLengths.php
20200429105310_TruncateIndexableTables.php
20200430075614_AddIndexableObjectIdAndTypeIndex.php
20200430150130_ClearIndexableTables.php
20200507054848_DeleteDuplicateIndexables.php
20200513133401_ResetIndexableHierarchyTable.php
20200609154515_AddHasAncestorsColumn.php
20200616130143_ReplacePermalinkHashIndex.php
20200617122511_CreateSEOLinksTable.php
20200702141921_CreateIndexableSubpagesIndex.php
20200728095334_AddIndexesForProminentWordsOnIndexables.php
20201202144329_AddEstimatedReadingTime.php
20201216124002_ExpandIndexableIDColumnLengths.php
20201216141134_ExpandPrimaryTermIDColumnLengths.php
20210817092415_AddVersionColumnToIndexables.php
20211020091404_AddObjectTimestamps.php
20230417083836_AddInclusiveLanguageScore.php
Create New File
Create
Edit File: 20200420073606_AddColumnsToIndexables.php
<?php namespace Yoast\WP\SEO\Config\Migrations; use Yoast\WP\Lib\Migrations\Migration; use Yoast\WP\Lib\Model; /** * Class AddColumnsToIndexables. */ class AddColumnsToIndexables extends Migration { /** * The plugin this migration belongs to. * * @var string */ public static $plugin = 'free'; /** * Migration up. * * @return void */ public function up() { $tables = $this->get_tables(); $blog_id = \get_current_blog_id(); foreach ( $tables as $table ) { $this->add_column( $table, 'blog_id', 'biginteger', [ 'null' => false, 'limit' => 20, 'default' => $blog_id, ] ); } $attr_limit_32 = [ 'null' => true, 'limit' => 32, ]; $attr_limit_64 = [ 'null' => true, 'limit' => 64, ]; $indexable_table = $this->get_indexable_table(); $this->add_column( $indexable_table, 'language', 'string', $attr_limit_32 ); $this->add_column( $indexable_table, 'region', 'string', $attr_limit_32 ); $this->add_column( $indexable_table, 'schema_page_type', 'string', $attr_limit_64 ); $this->add_column( $indexable_table, 'schema_article_type', 'string', $attr_limit_64 ); } /** * Migration down. * * @return void */ public function down() { $tables = $this->get_tables(); foreach ( $tables as $table ) { $this->remove_column( $table, 'blog_id' ); } $indexable_table = $this->get_indexable_table(); $this->remove_column( $indexable_table, 'language' ); $this->remove_column( $indexable_table, 'region' ); $this->remove_column( $indexable_table, 'schema_page_type' ); $this->remove_column( $indexable_table, 'schema_article_type' ); } /** * Retrieves the Indexable table. * * @return string The Indexable table name. */ protected function get_indexable_table() { return Model::get_table_name( 'Indexable' ); } /** * Retrieves the table names to use. * * @return string[] The table names to use. */ protected function get_tables() { return [ $this->get_indexable_table(), Model::get_table_name( 'Indexable_Hierarchy' ), Model::get_table_name( 'Primary_Term' ), ]; } }
Save Changes
Rename File
Rename