public function File::prepareRow in Zircon Profile 8
Same name in this branch
- 8 core/modules/file/src/Plugin/migrate/source/d6/File.php \Drupal\file\Plugin\migrate\source\d6\File::prepareRow()
- 8 core/modules/file/src/Plugin/migrate/source/d7/File.php \Drupal\file\Plugin\migrate\source\d7\File::prepareRow()
Same name and namespace in other branches
- 8.0 core/modules/file/src/Plugin/migrate/source/d7/File.php \Drupal\file\Plugin\migrate\source\d7\File::prepareRow()
Add additional data to the row.
Parameters
\Drupal\Migrate\Row $row: The row object.
Return value
bool FALSE if this row needs to be skipped.
Overrides SourcePluginBase::prepareRow
File
- core/
modules/ file/ src/ Plugin/ migrate/ source/ d7/ File.php, line 85 - Contains \Drupal\file\Plugin\migrate\source\d7\File.
Class
- File
- Drupal 7 file source from database.
Namespace
Drupal\file\Plugin\migrate\source\d7Code
public function prepareRow(Row $row) {
// Compute the filepath property, which is a physical representation of
// the URI relative to the Drupal root.
$path = str_replace([
'public:/',
'private:/',
'temporary:/',
], [
$this->publicPath,
$this->privatePath,
$this->temporaryPath,
], $row
->getSourceProperty('uri'));
// At this point, $path could be an absolute path or a relative path,
// depending on how the scheme's variable was set. So we need to shear out
// the source_base_path in order to make them all relative.
// @todo Don't depend on destination configuration.
// @see https://www.drupal.org/node/2577871
$path = str_replace($this->migration
->get('destination')['source_base_path'], NULL, $path);
$row
->setSourceProperty('filepath', $path);
return parent::prepareRow($row);
}