Published post to lbry network
This commit is contained in:
parent
c4c818b820
commit
8bc336952d
5 changed files with 84 additions and 18 deletions
|
@ -80,6 +80,35 @@ class LBRY_Daemon
|
|||
return $result->result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Publishes a post to the LBRY Network
|
||||
* @param [type] $name [description]
|
||||
* @param [type] $bid [description]
|
||||
* @param [type] $filepath [description]
|
||||
* @param [type] $title [description]
|
||||
* @param [type] $description [description]
|
||||
* @param [type] $language [description]
|
||||
* @return [type] [description]
|
||||
*/
|
||||
public function publish($name, $bid, $filepath, $title, $description, $language, $channel)
|
||||
{
|
||||
// TODO: Bring thumbnails into the mix
|
||||
$result = $this->request(
|
||||
'publish',
|
||||
array(
|
||||
'name' => $name,
|
||||
'bid' => $bid,
|
||||
'file_path' => $filepath,
|
||||
'title' => $title,
|
||||
'description' => $description,
|
||||
'language' => $language,
|
||||
'channel_name' => $channel
|
||||
)
|
||||
);
|
||||
$this->check_for_errors($result);
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sends a cURL request to the LBRY Daemon
|
||||
* @param string $method The method to call on the LBRY API
|
||||
|
|
|
@ -22,18 +22,22 @@ class LBRY_Network_Parser
|
|||
));
|
||||
}
|
||||
|
||||
public function convert_to_markdown($post_id)
|
||||
/**
|
||||
* Converts a post into markdown.
|
||||
* @param WP_Post $post The post to be converted
|
||||
* @return string
|
||||
*/
|
||||
public function convert_to_markdown($post)
|
||||
{
|
||||
$post = get_post($post_id);
|
||||
$title = '<h1>' . $post->post_title . '</h1>';
|
||||
|
||||
$featured_image = get_the_post_thumbnail($post);
|
||||
|
||||
$content = $title;
|
||||
if ($featured_image) {
|
||||
$content .= $featured_image . '<br />';
|
||||
}
|
||||
$content .= apply_filters('the_content', get_post($post_id)->post_content);
|
||||
// $title = '<h1>' . $post->post_title . '</h1>';
|
||||
//
|
||||
// $featured_image = get_the_post_thumbnail($post);
|
||||
//
|
||||
// $content = $title;
|
||||
// if ($featured_image) {
|
||||
// $content .= $featured_image . '<br />';
|
||||
// }
|
||||
$content = apply_filters('the_content', $post->post_content);
|
||||
$converted = $this->converter->convert($content);
|
||||
|
||||
return $converted;
|
||||
|
|
|
@ -21,8 +21,41 @@ class LBRY_Network_Publisher
|
|||
*/
|
||||
public function publish($post, $channels)
|
||||
{
|
||||
$name = $post->post_name;
|
||||
|
||||
// Leave if nothing to publish to
|
||||
if (!$channels) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Get converted markdown into a file
|
||||
$filepath = LBRY_ABSPATH . 'tmp/' . $post->post_name . time() . '.md';
|
||||
$file = fopen($filepath, 'w');
|
||||
$converted = LBRY()->network->parser->convert_to_markdown($post);
|
||||
$write_status = $file && fwrite($file, $converted);
|
||||
fclose($file);
|
||||
|
||||
// TODO: Catch relative exceptions if necessary
|
||||
try {
|
||||
// If everything went well with the conversion, carry on
|
||||
if ($write_status) {
|
||||
$featured_image = get_the_post_thumbnail($post);
|
||||
|
||||
$name = $post->post_name;
|
||||
$bid = get_option(LBRY_SETTINGS)[LBRY_LBC_PUBLISH];
|
||||
$title = $post->post_title;
|
||||
$language = substr(get_locale(), 0, 2);
|
||||
$license = get_option(LBRY_SETTINGS)[LBRY_LICENSE];
|
||||
// TODO: See if we can grab from yoast or a default?
|
||||
$description = $post->post_title;
|
||||
// TODO: Bring thumbnails into the mix
|
||||
// $thumbnail = $featured_image ? $featured_image : null;
|
||||
|
||||
foreach ($channels as $channel) {
|
||||
LBRY()->daemon->publish($name, $bid, $filepath, $title, $description, $language, $channel);
|
||||
}
|
||||
}
|
||||
} finally {
|
||||
// Delete the temporary markdown file
|
||||
unlink($filepath);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -66,6 +66,7 @@ class LBRYPress
|
|||
spl_autoload_register(array($this, 'lbry_autoload_register'));
|
||||
$this->init();
|
||||
$this->init_hooks();
|
||||
error_log("language: " . get_locale());
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,8 +1,7 @@
|
|||
<?php
|
||||
$LBRY = LBRY();
|
||||
$unnatributed = (object) array(
|
||||
'name' => 'Unattributed',
|
||||
'permanent_url' => 'unattributed'
|
||||
'name' => 'unattributed',
|
||||
);
|
||||
$channels = LBRY()->daemon->channel_list();
|
||||
array_unshift($channels, $unnatributed);
|
||||
|
@ -15,8 +14,8 @@ $cur_channels = get_post_meta($post->ID, 'lbry_channels');
|
|||
<?php foreach ($channels as $channel): ?>
|
||||
<li>
|
||||
<label class="selectit">
|
||||
<input type="checkbox" name="lbry_channels[]" value="<?= $channel->permanent_url ?>"
|
||||
<?php if (in_array($channel->permanent_url, $cur_channels)): ?>
|
||||
<input type="checkbox" name="lbry_channels[]" value="<?= $channel->name ?>"
|
||||
<?php if (in_array($channel->name, $cur_channels)): ?>
|
||||
checked="true"
|
||||
<?php endif; ?>
|
||||
>
|
||||
|
|
Loading…
Reference in a new issue